Difference between revisions of "GXtest Recorder User's Manual"

From GXtest Wiki
Jump to: navigation, search
m (Página nueva: category:GXtest Guides We are working in translate this page. == Introducción == Esta página muestra los conceptos principales de GXtest Recorder y brinda una guía para su ...)
 
(Summary)
 
(9 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 +
{{Idiomas
 +
|Manual de Usuario de GXtest Recorder
 +
|GXtest Recorder User's Manual | GXtest Recorder ユーザーズマニュアル}}
 
[[category:GXtest Guides]]
 
[[category:GXtest Guides]]
  
We are working in translate this page.
 
  
 +
== Introduction ==
 +
This page shows the main concepts of GXtest Recorder and provides guidance for use. The tutorial is based on the application [http://samples.genexus.com/ajaxsample90 GXAjax Sample]. To follow the steps you must have GXtest Recorder component installed.
  
 
+
== Recording a test case ==
== Introducción ==
+
GXtest Recorder lets you record user actions performed on the browser in order to create a test case. Here we describe how GXtest Recorder works in an independently way of GXtest Designer. To do this you must open Internet Explorer and go to the page where you want to start recording.  
Esta página muestra los conceptos principales de GXtest Recorder y brinda una guía para su utilización. El tutorial se llevará a cabo basado en la aplicación [http://samples.genexus.com/ajaxsample90 GXAjax Sample]. Para poder seguir los pasos descritos se debe tener instalado el componente GXtest Recorder ([[Instalación de GXtest Recorder]]).
+
 
+
== Grabar un caso de prueba ==
+
GXtest Recorder permite grabar las acciones que el usuario realiza sobre el navegador para luego crear un caso de prueba. En este caso vamos a describir como funciona GXtest Recorder de manera independiente de GXtest Designer. Para realizar esto se debe abrir el Internet Explorer y entrar a la página desde donde deseamos comenzar a grabar.
+
 
<br>
 
<br>
 
<br>
 
<br>
[[Imagen:Ready2Record.jpg |center ]]
+
[[Image:Ready2Record.jpg |center ]]
 
<br>
 
<br>
 
<br>
 
<br>
Una vez que se está ahí se debe ingresar el nombre del caso de prueba (por ejemplo CasoPrueba) y presionar el botón [[Imagen:buttonRecord.jpg]]. En ese momento se desplegará una ventana para seleccionar la carpeta en donde se guardará el archivo generado con las acciones realizadas. Se debe seleccionar una carpeta y confirmar.  
+
Once you are there you should enter the name of the test case (eg TestCase1) and press the button [[Image:buttonRecord.jpg]]. At that time you'll see a window to select the folder where you want to save the generated file with the actions recordered. You must select a folder and confirm. At that time the look of GXtest Recorder changes and is as follows.  
En ese momento el aspecto de GXtest Recorder cambia y queda de la siguiente manera.
+
 
<br>
 
<br>
 
<br>
 
<br>
[[Imagen: Recording.jpg |center ]]
+
[[Image: Recording.jpg |center ]]
 
<br>
 
<br>
 
<br>
 
<br>
Como se ve el estado ahora es '''Recording''', por lo que podemos comenzar a realizar acciones sobre el navegador para que las mismas sean grabadas.
+
As you see the state now is '''Recording''', so we can begin to perform actions on the browser which are going to be recorded.  
<br>
+
Una vez que se ha terminado con el caso de prueba se debe presionar el botón [[Imagen:buttonStop.jpg]]. En ese momento se desplegará un mensaje notificando que se ha terminado correctamente.
+
<br>
+
  
== Agregando más semántica al caso de Prueba ==
+
Once we have finished with the test case, we should press the button [[Image:buttonStop.jpg]]. At that time you'll see a message indicating that it has completed successfully.
Si bien un caso de prueba básicamente consiste en un conjunto de acciones sobre la aplicación, hay varios elementos más que lo componen y que es deseable expresarlos a medida que vamos creando el mismo. Por este motivo GXtest Recorder da la posibilidad al usuario de expresar de manera más completa el caso de prueba al permitir ingresar los siguientes elementos:
+
* Criterios de selección de fila en las grillas
+
* Validaciones
+
* Manejo de Variables
+
* Comentarios
+
  
<br>
+
== Adding further semantics to the Test Case ==
A continuación veamos con mayor detalle cada una de estos elementos.
+
While a test case basically consists of a series of actions over the application, there are several elements which compose it and it is desirable to express them at the same time we are creating it. For this reason GXtest Recorder gives the user the possibility to express more fully the test case to allow enter the following:
=== Criterios de selección de fila en las grillas ===
+
* Selection criteria row in the grid
Cada vez que realicemos una acción sobre un elemento que se encuentre en una grilla se presentará la siguiente pantalla.<br>
+
* Validations
 +
* Variable Handling
 +
* Comments
 +
 
 +
We are going to see in more detail each of these elements.
 +
 
 +
=== Selection criteria row in the grid ===
 +
Whenever you perform an action on an item placed on a grid will be presented the next screen.<br>
 
[[Image:Selection Rule ByRow.jpg]]
 
[[Image:Selection Rule ByRow.jpg]]
  
Esta pantalla permite que el usuario exprese el criterio por el cual ha realizado la acción en esa fila en particular, para de esa manera poder decirle a GXtest que lo que se quería es hacer la acción en un número de fila determinada (por ejemplo en la primera) o por el contrario se quería hacer clic en una fila cuyo valor de una de las columnas es determinado (por ejemplo si se quiere hacer clic en el producto de ID 1 sin importar en que fila se encuentre el mismo). <br>
+
This screen allows the user to express the criteria by which he has performed the action in that particular row, to tell GXtest that what is wanted is to make the action in a particular row number (eg in the first one) or, on the contrary, they wanted to click a row with a value of one of the columns is one determined (for example if you want to click the product ID 1 no matter in what row it is located).  
Esta capacidad de expresar la fila sobre la cual se quiere actuar hace que el caso de prueba capture de mejor forma el conocimiento de la prueba.
+
  
En la pantalla anterior se puede indicar en el campo Rule Type si se desea elegir la fila por una fila (SelectionByRow) en cuyo caso se debe indicar el número de fila o por el valor de una columna (SelectionByControl) en cuyo caso se habilitará la siguiente pantalla:<br>
+
This ability to express the row on which we wish to act makes the test case better to capture the knowledge of the test.
 +
 
 +
In the previous screen you can indicate in the "Rule Type" field if you want to select the row by the row number (SelectionByRow), in which case you should indicate the row number, or by the value of another column (SelectionByControl) in which case it will enable following screen:<br>
 
[[Image:Selection Rule ByControl.jpg]]
 
[[Image:Selection Rule ByControl.jpg]]
  
En la pantalla anterior de SelectionByControl se podrá indicar la comparación a realizar para elegir la fila. En la misma se visualizan tres elementos:
+
In the SelectionByControl screen you may indicate the comparison to make to choose the row. In the window, three elements are displayed:
* Nombre de la columna: es el nombre de la columna que se va a utilizar para comparar, por ejemplo identificador de producto
+
* Column name: is the name of the column to be used to compare, for example "product ID"
* Comparador: es el comparador que se va a utilizar para ver con cual fila se va a seleccionar. En caso de que sea el ejemplo del identificador de producto, el comparador = podría ser útil. Sin embargo si lo que se quiere es seleccionar cualquier producto que tenga saldo positivo, el comparador > podría ser más adecuado.
+
* Comparator: it is the comparison that is going to be used to select the row. In the example of the "product ID", the comparator '''=''' could be useful. However, if what you want is to select any product which has a positive balance, the comparator '>' might be more appropriate.
* Valor: valor con el cual se va a comparar. Este valor puede ser un valor fijo o una variable. En caso de que se estén utilizando variables para el caso de prueba, las mismas aparecerán listadas al final del combo.
+
* Value: it is the value to compare with. This value can be a hardcoded value or variable. If variables are being used for the test case, they will be listed at the end of the combo.
  
=== Validaciones ===
+
=== Validations ===
Las validaciones nos permiten expresar cuál es la respuesta esperada del sistema en un determinado momento. Por esto si se presiona el botón [[Imagen:buttonValidations.jpg]] se presenta una lista con las validaciones posibles que se pueden hacer. Por ejemplo, si se desea validar la existencia de un determinado texto en la pantalla, se debe seleccionar el mismo y luego presionar el botón de validación. Luego se debe indicar la validación AppearText y el sistema indicará que se ha agregado la validación de manera correcta.<br>
+
Validations allow us to express what is the expected response of the system at any one time. So, if you press the button  [[Image:buttonValidations.jpg]] a list of possible validations that can be done is presented. For example, if you want to validate the existence of a text on the screen, select it and then press the "Validation" button. Then you should select the validation '''AppearText''' and the system will indicate that validation has been added correctly.
En caso de que las validaciones sean sobre un determinado texto en la pantalla, se debe seleccionar ese texto antes de presionar el botón de validaciones.
+
 
Para las validaciones que sean sobre una grilla se deberá indicar al igual que en las acciones sobre grillas el criterio de selección por el cual se eligió la fila en la grilla.
+
If validations are on a text on the screen, that text must be selected before pressing the button validations.  
 +
For validation in a grid you must indicate (as in the actions on the grid) the selection criteria which has been used to choose the row in the grid.
 +
 
 +
=== Variable Handling ===
 +
Many times during the course of a test case it is necessary to take values returned by the system and then enter them in another part of the application. A typical example is when you create an invoice, then the system generates a unique invoice number and displays it on screen. Then if we need to make an query related with this bill we need to enter the invoice number. For such situations there are '''variables'''. A variable is simply a value that is associated with a name. For example, if we are creating a new Invoice, we can assign the name of InvoiceNumber to the value 8993 of the bill.
 +
 
 +
Now, what is the advantage of using variables? The main advantage is that if we use directly the value returned by the time we recorded the test case (8993 in the example), when we try to run it, it wont work and it would look for 8993 invoice number again, instead of the one generated during the course of the execution of the test case. Conversely, if you use a variable to store the value returned by the application, the test case can run as many times as you want without any problem, dynamically obtaining the invoice number.
 +
 
 +
Well, now see that this can be done very simply. Following the example of the invoice number, what we should do when the system display the invoice number is select it and then press the button [[Image:buttonTake.jpg]]. At that time the system will ask the name you want to assign to that value, in this case it would be InvoiceNumber.
 +
 
 +
After, when you arrive at the screen of the query, directly enter the invoice number that was generated, in this case the 8993, and press "Check" (in the system under test). At the time the system realizes that you are entering a value that is stored as a variable, therefore asks the user to use the variable instead of directly using the supplied value. You have to confirm and it is ready! If you have forgotten the value of the variable that had saved you can use the variables button [[Image:buttonVariables.jpg]].
 +
 
 +
=== Comment===
 +
Sometimes it is necessary to take some notes during the recording of the test case. These notes may have different purposes but are generally very helpful. For this reason we have added the button [[Image:buttonComments.jpg]] that lets you add comments anywhere in the test case and then will be deployed in line to where it was entered.
 +
 
 +
To use the functionality is very simple, when you were recording in the place you want to add the comment, just press the button [[Image:buttonComments.jpg]] and then enter the comment.
 +
 
 +
== Configuration ==
 +
We can configure GXtest Recorder so it should record (or not) some specific actions over the application. This options are available from the "Record Settings" button, inside GXtest Recorder toolbar.
 +
 
 +
[[Image:RecordSettings.PNG]]
 +
 
 +
*The settings can not be modified while recording a test case.
  
=== Manejo de Variables ===
 
Muchas veces durante el transcurso de un caso de prueba es necesario tomar valores devueltos por el sistema y luego ingresarlos en otro lugar de la aplicación. Un ejemplo típico es cuando se da de alta una factura, en ese momento el sistema genera un número único de factura y lo muestra en pantalla. Luego si necesitamos realizar una consulta de esa factura necesitamos ingresar ese número de factura.
 
Para este tipo de situaciones existen las variables. Una variable es simplemente un valor que tiene asociado un nombre. En el ejemplo anterior al valor de la factura 8993 le podemos asignar el nombre de NroFactura. <br>
 
Ahora bien, ¿Cual es la ventaja de usar variables?
 
La ventaja principal es que si usáramos directamente el valor devuelto la primera vez que grabamos (8993) cuando intentemos ejecutar el caso de prueba, el mismo no funcionaría o funcionaría mal ya que buscaría nuevamente la factura 8993 y no la que se generó durante el transcurso de la ejecución del caso de prueba. Por el contrario si se usa una variable para guardar el valor devuelto por la aplicación, el caso de prueba se puede ejecutar todas las veces que se desee sin ningún problema, obteniendo dinámicamente el número de la factura.
 
<br>
 
Bueno ahora veamos que esto se puede hacer de manera muy sencilla. Siguiendo el ejemplo del número de factura, lo que debemos hacer cuando el sistema nos muestre el número de factura, debemos seleccionarlo y luego presionar el botón [[Imagen:buttonTake.jpg]]. En ese momento el sistema nos preguntará el nombre que deseamos asignarle a ese valor, en este caso sería NroFactura.<br>
 
Luego al llegar a la pantalla de la consulta ingresamos directamente el número de factura que se generó, en este caso el 8993 y presionamos "Consultar" en ese momento el sistema se da cuenta que se está ingresando un valor que se tiene almacenado como variable, por lo que le pregunta al usuario si desea utilizar la variable en vez de utilizar directamente el valor suministrado. Se confirma y listo!
 
Si no se recuerda el valor de la variable que se había guardado se puede utilizar el botón de variables [[Imagen:buttonVariables.jpg]]
 
=== Comentarios ===
 
A veces es necesario tomar ciertas notas a medidas que vamos haciendo el caso de prueba. Estas notas pueden tener diversos fines, pero son en general de mucha ayuda. Por este motivo hemos agregado el botón de [[Imagen:buttonComments.jpg]] que permite agregar comentarios en cualquier lugar del caso de prueba y luego serán desplegados acordes a donde se han ingresado.<br>
 
Para utilizar la funcionalidad es muy sencillo, simplemente cuando se este grabando en el lugar que se desee se debe presionar el botón [[Imagen:buttonComments.jpg]] y luego ingresar el comentario.
 
  
== Resumiendo ==
+
== Summary ==
Como hemos visto a lo largo de esta página, GXtest Recorder nos permite grabar las acciones de un caso de prueba y agregar validaciones, variables y comentarios de manera sencilla e intuitiva.
+
As we have seen throughout this page, GXtest Recorder lets you record the actions of a test case and add validations, variables and comments in a simple and intuitive way.

Latest revision as of 16:50, 7 July 2014

Spanish.gif
English.gif
Japan.gif


Contents

Introduction

This page shows the main concepts of GXtest Recorder and provides guidance for use. The tutorial is based on the application GXAjax Sample. To follow the steps you must have GXtest Recorder component installed.

Recording a test case

GXtest Recorder lets you record user actions performed on the browser in order to create a test case. Here we describe how GXtest Recorder works in an independently way of GXtest Designer. To do this you must open Internet Explorer and go to the page where you want to start recording.

Ready2Record.jpg



Once you are there you should enter the name of the test case (eg TestCase1) and press the button ButtonRecord.jpg. At that time you'll see a window to select the folder where you want to save the generated file with the actions recordered. You must select a folder and confirm. At that time the look of GXtest Recorder changes and is as follows.

Recording.jpg



As you see the state now is Recording, so we can begin to perform actions on the browser which are going to be recorded.

Once we have finished with the test case, we should press the button ButtonStop.jpg. At that time you'll see a message indicating that it has completed successfully.

Adding further semantics to the Test Case

While a test case basically consists of a series of actions over the application, there are several elements which compose it and it is desirable to express them at the same time we are creating it. For this reason GXtest Recorder gives the user the possibility to express more fully the test case to allow enter the following:

  • Selection criteria row in the grid
  • Validations
  • Variable Handling
  • Comments

We are going to see in more detail each of these elements.

Selection criteria row in the grid

Whenever you perform an action on an item placed on a grid will be presented the next screen.
Selection Rule ByRow.jpg

This screen allows the user to express the criteria by which he has performed the action in that particular row, to tell GXtest that what is wanted is to make the action in a particular row number (eg in the first one) or, on the contrary, they wanted to click a row with a value of one of the columns is one determined (for example if you want to click the product ID 1 no matter in what row it is located).

This ability to express the row on which we wish to act makes the test case better to capture the knowledge of the test.

In the previous screen you can indicate in the "Rule Type" field if you want to select the row by the row number (SelectionByRow), in which case you should indicate the row number, or by the value of another column (SelectionByControl) in which case it will enable following screen:
Selection Rule ByControl.jpg

In the SelectionByControl screen you may indicate the comparison to make to choose the row. In the window, three elements are displayed:

  • Column name: is the name of the column to be used to compare, for example "product ID"
  • Comparator: it is the comparison that is going to be used to select the row. In the example of the "product ID", the comparator = could be useful. However, if what you want is to select any product which has a positive balance, the comparator '>' might be more appropriate.
  • Value: it is the value to compare with. This value can be a hardcoded value or variable. If variables are being used for the test case, they will be listed at the end of the combo.

Validations

Validations allow us to express what is the expected response of the system at any one time. So, if you press the button ButtonValidations.jpg a list of possible validations that can be done is presented. For example, if you want to validate the existence of a text on the screen, select it and then press the "Validation" button. Then you should select the validation AppearText and the system will indicate that validation has been added correctly.

If validations are on a text on the screen, that text must be selected before pressing the button validations. For validation in a grid you must indicate (as in the actions on the grid) the selection criteria which has been used to choose the row in the grid.

Variable Handling

Many times during the course of a test case it is necessary to take values returned by the system and then enter them in another part of the application. A typical example is when you create an invoice, then the system generates a unique invoice number and displays it on screen. Then if we need to make an query related with this bill we need to enter the invoice number. For such situations there are variables. A variable is simply a value that is associated with a name. For example, if we are creating a new Invoice, we can assign the name of InvoiceNumber to the value 8993 of the bill.

Now, what is the advantage of using variables? The main advantage is that if we use directly the value returned by the time we recorded the test case (8993 in the example), when we try to run it, it wont work and it would look for 8993 invoice number again, instead of the one generated during the course of the execution of the test case. Conversely, if you use a variable to store the value returned by the application, the test case can run as many times as you want without any problem, dynamically obtaining the invoice number.

Well, now see that this can be done very simply. Following the example of the invoice number, what we should do when the system display the invoice number is select it and then press the button ButtonTake.jpg. At that time the system will ask the name you want to assign to that value, in this case it would be InvoiceNumber.

After, when you arrive at the screen of the query, directly enter the invoice number that was generated, in this case the 8993, and press "Check" (in the system under test). At the time the system realizes that you are entering a value that is stored as a variable, therefore asks the user to use the variable instead of directly using the supplied value. You have to confirm and it is ready! If you have forgotten the value of the variable that had saved you can use the variables button ButtonVariables.jpg.

Comment

Sometimes it is necessary to take some notes during the recording of the test case. These notes may have different purposes but are generally very helpful. For this reason we have added the button ButtonComments.jpg that lets you add comments anywhere in the test case and then will be deployed in line to where it was entered.

To use the functionality is very simple, when you were recording in the place you want to add the comment, just press the button ButtonComments.jpg and then enter the comment.

Configuration

We can configure GXtest Recorder so it should record (or not) some specific actions over the application. This options are available from the "Record Settings" button, inside GXtest Recorder toolbar.

RecordSettings.PNG

  • The settings can not be modified while recording a test case.


Summary

As we have seen throughout this page, GXtest Recorder lets you record the actions of a test case and add validations, variables and comments in a simple and intuitive way.