Tutorial Cypress Automation
Tutorial Cypress Automation
Tutorial Cypress Automation
INDICE
1. Selector................................................................................................................................2
3. Chai y Mocha........................................................................................................................8
4. Primer Test.........................................................................................................................12
5. Hook ..................................................................................................................................14
2
Tata Consulting Services – Learnig team
1.-SELECTOR
Los selectores CSS son el patrón utilizado para identificar elementos en una página web según
su estilo. Un selector utilizado para filtrar los elementos DOM coincidentes:
GET
Utilice el símbolo mayor que (>) entre selectores para especificar que un selector es hijo
directo del otro.
- Descendiente
div span
- Selector de Clase.
3
Tata Consulting Services – Learnig team
- Selector Adyacente
Se hace referencia a este selector como selector adyacente o selector del próximo hermano.
Sólo seleccionará un elemento especificado que esté inmediatamente después de otro
elemento especificado.
Especific Match
Una de las formas más directas y más seguras de poder hacer selector a un elemento es
indicando el match exacto de los que lo componen, por ejemplo la siguiente sintaxis, le
indicamos que nos devuelva el elemento del formulario y dentro de esto tenemos un div y el
div hijo de la posición 1.
4
Tata Consulting Services – Learnig team
Buscamos los hijos que estan debajo de form, y con mayor exactitud a seudoclases
^= Match a prefix
$= Mtch a Suffix
*= Match a Substring(Contains)
Sintaxis.
a[target='_blank']
Ahora para encontrar los elementos a que empiecen con un underline o raya abajo
a[target^='_']
5
Tata Consulting Services – Learnig team
Sintaxis.
a[target$='nk']
a[target*='an']
6
Tata Consulting Services – Learnig team
Si deseamos agregar un nuevo archivo y para actualizar debemos correr nuestro test runner.
7
Tata Consulting Services – Learnig team
Referencia: https://www.youtube.com/watch?v=-sn3H0V3PuY
Ejemplo:
});
8
Tata Consulting Services – Learnig team
});
Se crea un Describe padre e hijo haciendo una validación cada uno correspondientemente.
Y realizamos las aserciones de un arreglo y el tamaño del arreglo, cada uno en sus it
correspondientes.
9
Tata Consulting Services – Learnig team
Archivo de Accesorios
Este fichero nos brinda un lugar para almacenar los archivos que se van a utilizar en nuestros
test, estos pueden ser : archivos json, Excel, xml, etc.
Documentos descargados.
10
Tata Consulting Services – Learnig team
Es el folder encargado de almacenar de las capturas por los comandos cy.screenshot o por
alguna configuración de imágenes de pantalla por algún error, lo guarda automáticamente.
Documentos de Videos.
11
Tata Consulting Services – Learnig team
Este fichero almacena los videos a través de una configuración de los test que se estan
ejecutando.
Archivos de complementos
Nos permite almacenar o modificar de los comando de cypress, Recordemos que cypress
proviene de Node.js. Los comandos se ejecutan en el navegador.
4.-Primer Test
12
Tata Consulting Services – Learnig team
Referencia:
https://www.youtube.com/watch?
v=puyyzaZuIKI&list=PLYDwWPRvXB89V8mbG6AmhUjHLpwWid70n&index=5
En este primer test realizamos operaciones matemáticas dentro de “describe” que también
puede ser remplazado con “context”, las operaciones se alojan en los “it”.
Ahora continuamos con los describe y su respectivos it con los llamados expect para obtener
los resultados esperados de nuestros elemento de test.
13
Tata Consulting Services – Learnig team
Los except nos dan los valores esperado de la función to.eq() con los resultados de nuestras
operaciones matemáticas antes ya declarados.
Los Hooks son funciones o métodos que se ejecutan en determinados momentos del flujo de
ejecución de los tests.
before(): es una función que se ejecuta una vez antes de la ejecución de todos los tests del
mismo grupo.
14
Tata Consulting Services – Learnig team
El resultado del ejemplo de nuestros Hook lo podemos ver en la siguiente imagen, donde estas
operaciones o funciones se puede utilizar cada vez que se realiza cada operación, antes de
todas estas o al finalizar.
15
Tata Consulting Services – Learnig team
Capacidad de Intento
Referencia:
- https://www.youtube.com/watch?
v=NvdUwnEXM_k&list=PLYDwWPRvXB89V8mbG6AmhUjHLpwWid70n&index=7
- https://todomvc.com/examples/react-backbone/
Para empezar utilizamos el cy.visit , para ir hacia una pagina determinada y poder realizar
nuestra navegación y funcionamiento.
En este ejemplo, la página permite (1) ingresar ítem al combo dándole el texto “todo A” y
enter como evento para agregar este ítem temporalmente al combo identificado con su
clase .newtodo.
Como podemos ver en nuestra imagen de resultados, la primera línea de código agrego los
ítem al combo con dos Ítem A y B, además debemos tener en cuenta que Cypress le asigna un
tiempo cada vez se asigna el ítem o se ejecuta el type del elemento.
16
Tata Consulting Services – Learnig team
Obtenemos con el “todo-list li” el combo y sus ítems agregados; y con el “should”
Debemos controlar 2 item con el length para que nos dé un Assert según la evaluación.
Constatamos lo que el DOM selecciona al buscar con los elementos SELECTOR , donde estos
elementos se han utilizado en el get.
17
Tata Consulting Services – Learnig team
Referencia : https://www.youtube.com/watch?
v=f2eKG_DStXE&list=PLYDwWPRvXB89V8mbG6AmhUjHLpwWid70n&index=8
Commando Run
18
Tata Consulting Services – Learnig team
Head
Headless
Es una ejecución sin visualizar la parte gráfica. EN la siguiente imagen podemos visualizar que
cada una de nuestras instrucciones solo corren en la consola, devolviendo el resultado
esperado o lo contrario.
19
Tata Consulting Services – Learnig team
VALIDACIONES – LOCATION
Referencia:
https://www.youtube.com/watch?
v=RFEs1RrXHmc&list=PLYDwWPRvXB89V8mbG6AmhUjHLpwWid70n&index=10
En esta sección una de las primeras funciones que se realizar al momento de testear es de
validar un dominio, titulo, protocolos y un login antes de navegar a páginas con mayor
funcionalidad y características.
20
Tata Consulting Services – Learnig team
21
Tata Consulting Services – Learnig team
LOCALIZADORES
En esta sección vamos a ver un poco ms de como utilizamos los elementos o selectores de las
paaginas que están en nuestra pagina de test. En el ejemplo siguiente , ejecutamos el test
donde en una pagina de login ingresamos un usuario y passsword y hacemos click para que nos
lleve a una nueva sección.
22
Tata Consulting Services – Learnig team
El evento click de nuestro botón nos lleva hacia una nueva página ya configurad en el submit.
23
Tata Consulting Services – Learnig team
Ejecutamos nuestro test para ver cómo funciona nuestros localizadores l obtener de nuestro
ejemplo el user, passwod y botón login de nuestra pagina
24
Tata Consulting Services – Learnig team
25