Difference between revisions of "Analizador de KB java"

From GXtest Wiki
Jump to: navigation, search
(Generar .gxt y tests)
 
(16 intermediate revisions by one user not shown)
Line 1: Line 1:
El analizador de KB java es un utilitario específico para KBs generadas en java con GeneXus 9, el cual genera la metadata (archivo gxt) de las pantallas web de la aplicación para que GXtest utilice como KB.  
+
[[Category:GXtest4Bantotal]]
 +
El analizador de KB java es un utilitario específico para KBs generadas en java con GeneXus 9, el cual genera la metadata (archivo .gxt) de las pantallas web de la aplicación para que GXtest utilice como KB.  
  
 
Este utilitario sirve cuando el usuario de GXtest no tiene acceso a la KB o los fuentes de la aplicación, pero sí a los archivos binarios de la app java web (archivos .class).
 
Este utilitario sirve cuando el usuario de GXtest no tiene acceso a la KB o los fuentes de la aplicación, pero sí a los archivos binarios de la app java web (archivos .class).
  
Además del archivo gxt, el Analizador extraerá información sobre las referencias entre objetos de la KB (cross-reference), los atributos y tablas utilizadas, y las sentencias SQL definidas en cada objeto.
+
Además del archivo .gxt, el Analizador extraerá información sobre las referencias entre objetos de la KB (cross-reference), los atributos y tablas utilizadas, y las sentencias SQL definidas en cada objeto.
  
 
En las siguientes secciones se detalla cómo configurar/utilizar la herramienta, y cómo ver los resultados.
 
En las siguientes secciones se detalla cómo configurar/utilizar la herramienta, y cómo ver los resultados.
Line 10: Line 11:
 
La herramienta requiere:
 
La herramienta requiere:
 
* .Net framework 4.5.2
 
* .Net framework 4.5.2
* Java JRE 7 o mayor
+
* Java JRE 7 o superior
 
* SQLServer para guardar la información sobre los objetos. Puede ser local o un equipo remoto, en cualquiera de sus versiones (Express, Enterprise, Developer), 2005 o superior.
 
* SQLServer para guardar la información sobre los objetos. Puede ser local o un equipo remoto, en cualquiera de sus versiones (Express, Enterprise, Developer), 2005 o superior.
 
* En el SQLServer seleccionado se deberá crear una base de datos vacía (se sugiere utilizar el nombre KBInfo)
 
* En el SQLServer seleccionado se deberá crear una base de datos vacía (se sugiere utilizar el nombre KBInfo)
* Ejecutar el script "inicializar_bd.sql" incluido en el zip descargado. Si no se utilizó el nombre KBInfo para la base de datos del paso anterior, se deberá reemplazar en la línea "use [KBInfo];" por el nombre de la base de datos creada.
+
* Ejecutar el script "inicializar_bd.sql" incluido en el archivo zip descargado. Si no se utilizó el nombre KBInfo para la base de datos del paso anterior, se deberá reemplazar en la línea "use [KBInfo];" por el nombre de la base de datos creada.
  
 
== Configuración ==
 
== Configuración ==
Line 21: Line 22:
  
 
* Debe proporcionar los datos de configuración de las bases de datos KBInfo y GXtest:
 
* Debe proporcionar los datos de configuración de las bases de datos KBInfo y GXtest:
 
+
** Nombre o IP del servidor.
* Nombre o IP del servidor.
+
** Nombre de la base de datos.
 
+
** Datos de autenticación (Puede ser Integrada o SQL).
* Nombre de la base de datos.
+
 
+
* Datos de autenticación (Puede ser Integrada o SQL).
+
  
 
'''Nota:''' En caso de ser Autenticación SQL debe proporcionar usuario y contraseña. En ambos casos puede comprobar la conexión.
 
'''Nota:''' En caso de ser Autenticación SQL debe proporcionar usuario y contraseña. En ambos casos puede comprobar la conexión.
Line 32: Line 30:
 
[[Image: Configuracion.png|650 px|center ]]
 
[[Image: Configuracion.png|650 px|center ]]
  
== Analizar .class ==
+
== Analizador de archivos .class ==
  
Deberá indicar la carpeta con los archivos .class, indicar el nombre de la KB y describir el o los cambios efectuados.
+
En la pestaña "Analizar .class" deberá indicar la carpeta que contiene los archivos .class, indicar el nombre de la KB y describir el o los cambios efectuados.
  
Al dar clic en el botón Analizar, se descompilarán todos los archivos .class volcando la información en la base de datos indicada en la configuración de la herramienta.
+
Al dar clic en el botón "Analizar", se descompilarán todos los archivos .class volcando la información en la base de datos indicada en la configuración de la herramienta.
  
 
[[File: Analizar.png|650px|center]]
 
[[File: Analizar.png|650px|center]]
  
== Generar .gxt y tests ==
+
== Generador de archivos .gxt y tests ==
  
Se indica la carpeta en la que queremos se guarde el archivo .gxt que se generará, así como los test en caso de ser seleccionada esta opción. Una vez seleccionada la KB de la que se desea generar el archivo .gxt se da clic en el botón "Generar", la herramienta actualiza el estado del proceso incluyendo el tiempo transcurrido para la generación del archivo .gxt.
+
En la pestaña "Generar .gxt y tests" se debe indicar la carpeta en la que queremos se guarde el archivo .gxt que se generará, así como los tests en caso de ser seleccionada esta opción. Una vez seleccionada la KB de la que se desea generar el archivo .gxt se da clic en el botón "Generar", la herramienta actualiza el estado del proceso incluyendo el tiempo transcurrido para la generación del archivo .gxt.
  
Si selecciona el checkbox “Generar test”, en la carpeta indicada se creará una carpeta nombrada “Tests” con un archivo .xml que contiene un test para cada webpanel de la KB generada y un archivo .dpd que contiene los Datapools asociados a las pruebas creadas en el documento .xml.
 
  
 
[[File: Generar.png |650px|center]]
 
[[File: Generar.png |650px|center]]
<br></br>
+
<br>
 +
Si selecciona el checkbox “Generar test”, en la carpeta indicada se creará una carpeta nombrada “Tests” con un archivo .xml que contiene un test para cada webpanel de la KB generada y un archivo .dpd que contiene los Datapools asociados a las pruebas creadas en el documento .xml.
 +
<br>
 
[[File: Carpeta.png |650px|center]]
 
[[File: Carpeta.png |650px|center]]
<br></br>
+
<br>
 
[[File: Tests.png |650px|center]]
 
[[File: Tests.png |650px|center]]
  
== Información de la KB ==
+
== Analizador de impacto ==
 
+
El modelo de datos que se almacena en la base de datos con la información de los objetos contenidos en la KB es el siguiente:
+
 
+
 
+
[[File:ModeloDatos AnalizadorKB.PNG | center]]
+
 
+
 
+
Las tablas contienen la siguiente información:
+
* KBs: Se identifican por el nombre de KB definido en el xml de configuración al realizar el análisis
+
* KBVersions: Cada vez que ejecutamos un análisis sobre la misma KB (identificada por su nombre), se genera una nueva versión. Toda la información sobre los objetos se asocia a esta versión. Esto permite realizar luego un análisis de impacto de los cambios entre versiones.
+
* Objetos: Todos los objetos detectados y analizados, asociados a una determinada versión.
+
* Atributos: Todos los atributos detectados y analizados, asociados a una determinada versión.
+
* ObjetoAtributos: Los atributos que cada objeto utiliza.
+
* ObjetoCampos: Los campos o controles que tiene cada pantalla (objeto web).
+
* ObjetoClases: Las clases java asociados a cada objeto GeneXus.
+
* ObjetosRelacion: Los objetos que invoca o llama cada objeto.
+
* ObjetoSQLs: Las sentencias SQL que potencialmente pueden ejecutarse al utilizar/invocar el objeto. Además contiene información sobre las tablas accedidas y el tipo de operación (INSERT, UPDATE, DELETE)
+
 
+
 
+
=== Ejemplos de consultas útiles ===
+
 
+
Objetos que acceden a la tabla FSFI10:
+
<pre>
+
SELECT ObjTipoCodigo, ObjNombre, ObjSQL FROM ObjetoSQLs WHERE KBNombre = 'SabadellPruebas' and KBVersion = '20160218-141845'
+
and ObjTablas LIKE '%FSFI10%'
+
</pre>
+
  
 +
En la pestaña "Analizar impacto" debe seleccionar la KB a analizar y el proyecto de interés. Al dar clic en el botón “Analizar” la herramienta devolverá los casos de pruebas que contienen paneles que han sido modificados, devuelve además casos de pruebas que contienen paneles que hacen referencia a procedimientos Genexus que fueron modificados. Si se da doble clic en algún caso de prueba devuelto se muestran los objetos modificados que impactan en dicho caso de prueba.
  
Objetos que modifican registros en la tabla FSA006:
 
<pre>
 
SELECT ObjTipoCodigo, ObjNombre, ObjSQL FROM ObjetoSQLs WHERE KBNombre = 'SabadellPruebas' and KBVersion = '20160218-141845'
 
and OBjOperacion = 'update' and ObjTablas LIKE '%FSA006%'
 
</pre>
 
  
 +
[[File: AnalizadorImpacto.PNG | 650 px |center]]
  
Objetos que son llamados desde el Webpanel SALDO:
+
== Examinador de objetos ==
<pre>
+
SELECT * FROM ObjetosRelacion WHERE KBNombre = 'SabadellPruebas' and KBVersion = '20160218-141845'
+
and ObjTipoCodigo='W' and ObjNombre LIKE '%SALDO%'
+
</pre>
+
  
== Descarga de versiones ==
+
En la pestaña "Examinar" debe seleccionar una KB y un objeto para ver la información relacionada a dicho objeto.
  
* Ver.1.0 (2016-02-22) - [https://s3-us-west-2.amazonaws.com/abstracta/GXtest/Sabadell/AnalizadorKBJava.1.0.zip Descargar]
+
[[File: Examinar.png |650px|center]]

Latest revision as of 17:17, 28 April 2017

El analizador de KB java es un utilitario específico para KBs generadas en java con GeneXus 9, el cual genera la metadata (archivo .gxt) de las pantallas web de la aplicación para que GXtest utilice como KB.

Este utilitario sirve cuando el usuario de GXtest no tiene acceso a la KB o los fuentes de la aplicación, pero sí a los archivos binarios de la app java web (archivos .class).

Además del archivo .gxt, el Analizador extraerá información sobre las referencias entre objetos de la KB (cross-reference), los atributos y tablas utilizadas, y las sentencias SQL definidas en cada objeto.

En las siguientes secciones se detalla cómo configurar/utilizar la herramienta, y cómo ver los resultados.

Contents

Requerimientos

La herramienta requiere:

  • .Net framework 4.5.2
  • Java JRE 7 o superior
  • SQLServer para guardar la información sobre los objetos. Puede ser local o un equipo remoto, en cualquiera de sus versiones (Express, Enterprise, Developer), 2005 o superior.
  • En el SQLServer seleccionado se deberá crear una base de datos vacía (se sugiere utilizar el nombre KBInfo)
  • Ejecutar el script "inicializar_bd.sql" incluido en el archivo zip descargado. Si no se utilizó el nombre KBInfo para la base de datos del paso anterior, se deberá reemplazar en la línea "use [KBInfo];" por el nombre de la base de datos creada.

Configuración

Para la configuración de la herramienta es necesario:

  • Indicar la dirección del archivo java.exe.
  • Debe proporcionar los datos de configuración de las bases de datos KBInfo y GXtest:
    • Nombre o IP del servidor.
    • Nombre de la base de datos.
    • Datos de autenticación (Puede ser Integrada o SQL).

Nota: En caso de ser Autenticación SQL debe proporcionar usuario y contraseña. En ambos casos puede comprobar la conexión.

Configuracion.png

Analizador de archivos .class

En la pestaña "Analizar .class" deberá indicar la carpeta que contiene los archivos .class, indicar el nombre de la KB y describir el o los cambios efectuados.

Al dar clic en el botón "Analizar", se descompilarán todos los archivos .class volcando la información en la base de datos indicada en la configuración de la herramienta.

Analizar.png

Generador de archivos .gxt y tests

En la pestaña "Generar .gxt y tests" se debe indicar la carpeta en la que queremos se guarde el archivo .gxt que se generará, así como los tests en caso de ser seleccionada esta opción. Una vez seleccionada la KB de la que se desea generar el archivo .gxt se da clic en el botón "Generar", la herramienta actualiza el estado del proceso incluyendo el tiempo transcurrido para la generación del archivo .gxt.


Generar.png


Si selecciona el checkbox “Generar test”, en la carpeta indicada se creará una carpeta nombrada “Tests” con un archivo .xml que contiene un test para cada webpanel de la KB generada y un archivo .dpd que contiene los Datapools asociados a las pruebas creadas en el documento .xml.

Carpeta.png


Tests.png

Analizador de impacto

En la pestaña "Analizar impacto" debe seleccionar la KB a analizar y el proyecto de interés. Al dar clic en el botón “Analizar” la herramienta devolverá los casos de pruebas que contienen paneles que han sido modificados, devuelve además casos de pruebas que contienen paneles que hacen referencia a procedimientos Genexus que fueron modificados. Si se da doble clic en algún caso de prueba devuelto se muestran los objetos modificados que impactan en dicho caso de prueba.


AnalizadorImpacto.PNG

Examinador de objetos

En la pestaña "Examinar" debe seleccionar una KB y un objeto para ver la información relacionada a dicho objeto.

Examinar.png