Generación de clases de prueba

En esta sección se explica el soporte de CER para generar clases de prueba de conjuntos de reglas. Podemos probar nuestro conjunto de reglas Prestación de muestra utilizando este soporte. Para este ejemplo, vamos a examinar la regla "Persona elegible".

La clase Person tiene 2 atributos que deben especificarse para calcular el atributo "eligible" para una persona.
  1. age - un número para indicar la edad de una persona.
  2. isStudent - un valor booleano para indicar si la persona es un estudiante.
La Persona tiene un atributo derivado como se indica a continuación.
  1. eligible - valor booleano para indicar si una persona es elegible para la "Prestación de muestra"
Los pasos siguientes consisten en ejecutar el generador de códigos de prueba de CER en el archivo SampleBenefit.xml que hemos extraído en el apartado Extracción de conjuntos de reglas de la base de datos para realizar pruebas.
  1. Abra un indicador de mandatos en el directorio Curam/EJBServer.
  2. Ejecute build creole.generate.test.classes para generar clases de prueba a partir del conjunto de reglas. Este destino se ejecuta en los conjuntos de reglas del directorio CREOLE_Rule_Sets para cada componente.
  3. El generador de códigos CER colocará su salida en el directorio EJBServer/build/svr/creole.gen/source, renueve el entorno de desarrollo para verlo.
El código generado sólo está orientado al uso en entornos de prueba donde volver a compilar los cambios del código resulta sencillo. El código generado no es portable entre máquinas, porque contiene vías de acceso absolutas a los conjuntos de reglas de la máquina local. Concretamente, no debe utilizar el código generado en ningún entorno de producción en el que los conjuntos de reglas puedan cambiar dinámicamente.
Consejo: Debe volver a generar las clases de prueba si se realizan cambios estructurales en los conjuntos de reglas, por ejemplo

No es necesario que vuelva a generar las clases de prueba si los cambios están limitados a la implementación de un atributo de regla (es decir, sus expresiones de derivación). Las derivaciones siempre se procesan dinámicamente a partir del conjunto de reglas en tiempo de ejecución y no están presentes en las clases de pruebas generadas.