Saltar al contenido principal
Página

Tema 3.5 - Control Flow

En las versiones recientes de Selenium IDE se permite implementar condiciones y bucles a las pruebas que se crean, haciendo que se puedan ejecutar los comandos a partir de ciertas condiciones o ejecutarlas repetidas veces los comandos que funcionan para esto son:


Condiciones

  • If
  • Else
  • Else if


Bucles

  • Times
  • Do
  • While

 

Para los diferentes ejemplos de control de flujo se va a seguir el ejemplo que se puso en cómo crear un proyecto.

Condiciones

If

Este bloque condicional permite evaluar una expresión JavaScript, la condición se coloca en el campo del Target y en Command se coloca if, si la expresión a evaluar es verdadera, continua con la siguiente instrucción, si, por el contrario, es falsa, salta a la instrucción end (comando de cierre) terminando el bloque condicional.


  • Para efectos del ejemplo en un nuevo comando, guardaremos en una variable llamada SeleniumSite el nombre del link de la búsqueda de Google llamado “Selenium – Web Browser Automation”

1




  • Una vez creado la nueva línea de comando se llena de la siguiente manera:


2


Command: en este caso el comando a usar es el condicional if.

Target: Se coloca la expresión de condición donde la variable SeleniumSite (Que fue creada anteriormente) sea igual a un texto en este caso es Selenium – web Browser Automation.

Value: La expresión resultante será guardada la variable Site.


  • Es importante terminar el bloque condicional con el comando end de la siguiente manera.


3

  • En caso de que el bloque condicional no tenga la instrucción final (End), saldrá un error en la línea del if como se muestra a continuación.


4


  • Al final se obtiene la siguiente lista de comandos:

5


Else

Este comando es similar al if, donde lo que hace es evaluar una expresión JavaScript ingresando en el campo Target la condición a tratar, se inicia con el comando if continuada con los comandos a realizar en caso de que la condición sea verdadera, la diferencia se encuentra en que con el else se tiene un bloque de comandos en caso de que la condición sea falsa, para terminar el else se ingresa el comando con la instrucción end.





  • Para este caso se sigue la misma condición que se usó con el if y en caso de que la condición sea falsa es decir la página no sea Selenium –Browser Automation dará clic en el link de Documentation.





  • Al final toda la lista de comandos queda de la siguiente manera:





Else if.

Este bloque condicional, permite evaluar una expresión JavaScript, que va en el bloque de código del comando if, si la expresión a evaluar es verdadera, continua con la siguiente instrucción, si por el contrario es falsa, salta a la instrucción else if, donde se evalúa la nueva condición, si es verdadera continua con el bloque de código, sino termina el bloque condicional con la instrucción end.

Utilizaremos el ejemplo de if y le agregaremos una condición (else if), para ello insertaremos un nuevo comando (Crear nueva línea de comando).


  • Se ingresan los parámetros.





Command: en este caso el comando a usar es el condicional Else if.

Target: Se coloca la expresión de condición donde la variable SeleniumSite (Que fue creada anteriormente) es diferente a al texto Selenium – web Browser Automation 


  • Luego se agregan los comandos que va a realizar en tal caso que la condición del else if sea verdadera terminado con el end.





  • Al final el caso de prueba queda de la siguiente manera:




Ciclos

Un ciclo es una secuencia de comandos que se ejecuta múltiples veces hasta que la condición que se asigna al ciclo deja de ser verdadera.

Se usa para hacer una serie de comandos repetidas veces sin tener que escribir el mismo código, lo que ahorra tiempo, deja el código más claro y facilita poder modificarlo en futuras ocasiones.


Times

Ciclo que permite iterar un número determinado de veces, ejecutando el bloque de código tantas veces se halla especificado, se enuncia con el comando times, y en Target el número de veces que se quiere iterar. El bloque de código termina con la instrucción end.


Se inserta el comando  (Crear nueva línea de comando).





Command: Se ingresa la palabra times indicando el inicio del ciclo.

Target: Se especifica el número de veces que va a ejecutar el bloque de código.


  • Al finalizar de insertar los comandos que va realizar el ciclo se termina con el comando end.




 

  • Al final el test queda de la siguiente manera:





  • Lo que va a hacer el caso de prueba será repetir 2 veces el proceso del ejemplo que se está tratando en todos los diferentes ejemplos anteriores


Do

Ciclo que en su primera iteración ejecuta el bloque de código, y al final valida la expresión con el comando repeat if, si la expresión es verdadera se sigue iterando, si por el contrario es falsa se termina el ciclo.


  • El ciclo se inicia con el comando do:




  • Para finalizar el ciclo se ingresa el comando repeat if y en el target la condición JavaScript





Check: Variable que va a contar el número de veces que se repite el do.


  • Entonces todo quedaría de la siguiente manera:




  • Con la pagina que se trabaja en los ejemplos anteriores, lo que va a realizar el do es a partir de la variable contador (Check) va a presionar un hipervínculo u otro.


While

Ciclo dado por el comando while, donde se itera validando la expresión, si es verdadera continua con el bloque de código tantas veces la expresión sea verdadera, cuando la expresión es falsa se termina el ciclo con la instrucción end.






Command: se escribe while

Target: Se ingresa la condición JavaScript que debe cumplir para acceder al ciclo.

Por último, se cierra el ciclo mediante el comando end.

Check: Variable que va a contar el número de veces que se repite el while.





  • Al final el código sería:




  • El objetivo del while es presionar el enlace de Download Selenium hasta que el contador (Check) sea menor a 3.


Diferencia entre los ciclos

Times: Ejecuta una n cantidad de veces el bloque de código conociendo con anterioridad el valor de n, se usa en caso de saber cuántas veces se requiere ejecutar el bloque de código.

While: Inicialmente evalúa la condición antes de ejecutar el bloque de código, se usa cuando no se sabe con exactitud cuántas veces se va a ejecutar el bloque de código

Do: Ejecuta el bloque de código al menos una vez y luego valida la condición, se usa cuando se debe ejecutar al menos una vez el bloque sin depender que la condición sea verdadera o falsa

Última modificación: miércoles, 23 de marzo de 2022, 14:25