Manual de Usuario de GXtest Generator

From GXtest Wiki
Revision as of 17:38, 11 February 2013 by Abstracta (Talk | contribs)

Jump to: navigation, search

En este artículo se verá como comenzar a automatizar pruebas con GXtest, a partir de la generación automática de casos de prueba, utilizando la extensión GXtest Generator desde GeneXus.

Antes de comenzar se debe tener instalado y activado GXtest en algún PC, de modo de poder ejecutar las pruebas (Ver Installation guide de GXtest).

Contents

Consideraciones generales acerca de la generación automática

Instalación de la extensión en GeneXus

La funcionalidad se distribuye en un instalador, que instala como una extensión en GeneXus Ev1 o Ev2.

Durante la instalación:

  • Se deberá indicar el path de la instalación de GeneXus donde se quiere instalar la extensión. Puede aplicarla en más de una instalación de GeneXus (si tuviera varias).
  • Se deberá proporcionar una base de datos de GXtest, donde la extensión guardará los casos de prueba generados. La versión de GXtest instalada debe ser 1.2.0 +, y además debe coincidir con la versión de la extensión.

Las versiones soportadas para la base de datos son Microsoft SQLServer 2005 o mayor, pudiendo ser una Express Edition.


GXtest Generator Tool Window

Al abrir GeneXus, aparecerá un nuevo menú GXtest que tendrá el ítem Autogenerate TestCases. Dicha opción de menu abre la ventana de generación automática de GXtest Generator.

Allí se verá información de testing asociada a la KB que está abierta (si es que ya generamos un proyecto en GXtest), y estará disponible el botón para iniciar el proceso: Generate tests.

En caso de ser necesario, antes de comenzar a generar los casos de prueba es posible configurar las opciones de generación que la extensión provee.

Opciones de Configuración

En el menú Tools->Options hay una sección específica para configurar la extensión de GXtest.

  • En la sección general, se puede configurar:
    • Data Dictionary Path: El path a un diccionario de datos en formato XML. Este diccionario se puede utilizar para atributos que tengan una semántica bien definida, por ejemplo nombres, o direcciones de email. Esos diccionarios se pueden asociar a cualquier atributo o dominio. Ver GXtest Generator - Diccionarios.
    • Include Unreferences Transactions: Indica si se debe incluir a todas las transacciones y objetos (True), o solamente a transacciones y objetos que sean alcanzables por algún Main (False).
    • Language: El lenguaje en el que se probará la aplicación. Esto es requerido para predefinir el lenguaje de los mensajes que GXtest validará.
    • Startup Test Case: un caso de prueba inicial que se ejecutará antes de cada TestCase. Ver GXtest Generator - Incluir TestCase de login.
    • Test depth: Indica la profundidad que tendrán los casos generados, en lo referido a la cantidad de combinaciones de datos que se generarán para la prueba. Tiene cuatro opciones:
      • Minimum (genera un único dato válido para cada campo).
      • Basic (genera varios registros válidos para cada campo, según casos borde de cada campo).
      • Basic with rules(igual al Basic, pero también toma en cuenta las rules de los objetos).
      • Valid and Invalid (datos conjuntos de datos válidos e inválidos, de forma de testear las validaciones sobre los datos inválidos).
    • Visit Web Pages: Si se configura en True, genera un caso de prueba que visita todos los webpanels encontrados en la KB, de forma de validar que los mismos estén generados y deployados correctamente en la aplicación.


  • En la sección Manager se puede configurar los datos para que GXtest Manager agende la tarea, y ordene la ejecución de los casos de pruebas generados, en el GXtest Executor configurado.


  • En la sección Connection se configuran los datos de conexión a la base de datos de GXtest, donde se creará el proyecto y los casos de prueba generados.


  • En la sección Advanced se configuran opciones mas avanzadas de la generación.
    • Temp XML path: el directorio temporal donde se almacenan los casos de prueba y datapools autogenerados. Además allí se genera un archivo de Log donde se pueden ver detalles de la generación y errores ocurridos durante el proceso.
    • Ignore List: esta opción permite especificar una lista separada por comas de objetos que no se deben incluir en la generación de los casos de prueba. Por ejemplo: "Client,Invoice*".
    • Update KB: Indica si la KB en GXtest debe ser actualizada cada vez que se genera el proceso (Always Update), solamente cuando no hay conflictos (Update if no conflicts), o nunca (Never Update).

Ejecutando GXtest Generator

Al ejecutar el proceso de generación, se mostrarán los pasos del proceso en la grilla, y también en la ventana de Output de GeneXus, en la sección GXtest. Allí se podrán ver los objetos examinados, así como los casos de prueba generados e importados a GXtest.