This repository is an educational assignment.
- Aplicación bajo pruebas: Ghost
- Versión: 4.41.1
- Versión for VRT: 4.36
Apartes en la Wiki:
Reportes VRT:
Instrucciones de ejecución:
Las siguientes son las funcionalidades elegidas para realizar las pruebas.
No | Nombre | Descripción |
---|---|---|
1 | Login | Se puede hacer signin de un usuario registrado previamente. |
2 | Crear una publicación | Se puede crear una publicación, esta es la unidad mínima de contenido de Ghost. |
3 | Editar una publicación | Se puede editar todos los detalles de una publicación ya creada. |
4 | Eliminar una publicación | Se puede eliminar una publicación ya creada. |
5 | Crear un member | Se crean los miembros de la página, aquellos que están suscritos a su contenido, se provee un nombre, correo y labels. |
6 | Editar un member | Se puede editar todos los datos de un member ya creado. |
7 | Eliminar un member | Se puede eliminar un member ya creado. |
8 | Filtrar members | Se puede filtrar los miembros por nombre y otros identificadores. |
9 | Crear un tag | Se puede crear un tag, llenando todos sus campos |
Los archivos de playwwright se encuentran en e2e-playwright/
Los archivos de kraken, los features se encuentran en features/, y los steps y support están escritos en TypeScript y se encuentran en features/web_src/
Ambas herramientas están corriendo en Continuous Integration en este repositorio, puede navegar a actions para ver los últimos resultados de los test, o puede ver el listado de commits para ver su estado final.
Los workflows, o definición de procedimientos están definidos de la siguiente manera:
Estos corren con cada commit a master en el repositorio.
Instrucciones para correr pruebas E2E en playwright y kraken.
Instrucciones para instalar en máquina en Unix like systems (Linux, Mac OS (no probado)).
npm install
- Chromium
- Docker
NOTA: El global setup de playwright se encargará de levantar una instancia de Ghost usando un contenedor en el puerto 9333. por lo cual solo el siguiente llamado es suficiente para hacer el bootstrap.
npm run test-pw-regular
NOTA: este comando se encargará de recrear el contenedor de ghost y su base de datos en cada ocasión que corra
Si tiene problemas para instalar o correr playwright dirígase a la guía de instalación
También le puede servir verificar como las pruebas automátizadas se definen en CI
Instrucciones para instalar en máquina en Unix like systems (Linux, Mac OS (no probado)).
npm install
- Todos los requisitos de kraken
- Chromium
- Docker
NOTA: El before step de kraken se encargará de levantar una instancia de Ghost usando un contenedor en el puerto 9333. por lo cual solo el siguiente llamado es suficiente para hacer el bootstrap.
npm run kraken
NOTA: este comando se encargará de recrear el contenedor de ghost y su base de datos en cada ocasión que corra
Instrucciones para correr pruebas de VRT en playwright y kraken.
Actualmente las pruebas de VRT se corren en cada commit de este repositorio, como se puede ver en los siguientes workflows:
Los resultados son publicados automáticamente a la rama gh-pages de este repositorio y por lo tanto se sirve como contenido web en los siguientes links:
Para correr las pruebas en modos VRT se hace necesario lo siguiente:
Siga las instrucciones descritas para correr playwright E2E ignorando el paso 3, y luego:
CI=1 GHOST_VRT=1 GHOST_VERSION=4.41.1 npx playwright test --workers 1
CI=1 GHOST_VRT=1 GHOST_VERSION=4.36 npx playwright test --workers 1
npm run reporter -- --process playwright --prev 4.36 --post 4.41.1
Esto generará un archivo en la base del repositorio playwright.html
.
Siga las instrucciones descritas para correr kraken E2E ignorando el paso 3, y luego:
NOTA: El before step de kraken se encargará de levantar una instancia de Ghost usando un contenedor en el puerto 9333. por lo cual solo el siguiente llamado es suficiente para hacer el bootstrap.
CI=1 GHOST_VRT=1 GHOST_VERSION=4.41.1 npm run kraken
CI=1 GHOST_VRT=1 GHOST_VERSION=4.36 npm run kraken
npm run reporter -- --process playwright --prev 4.36 --post 4.41.1
Esto generará un archivo en la base del repositorio playwright.html
.
La automatización de este procesamiento se encuentra en el script reporter donde se toman los resultados de los screenshots, se analizan con resembleJS y luego se aplican un template HTML usando nunjucks.
Instrucciones para correr pruebas de validación de datos en playwright y kraken.
Explicación e inventario: Data Validation Scenarios
Siga las instrucciones descritas para correr playwright E2E ignorando el paso 3, y luego:
NOTA: este comando se encargará de crear/recrear el contenedor de ghost y su base de datos en cada ocasión que corra
npm run test-data
Siga las mismas instrucciones para correr kraken E2E, son las mismas pruebas.
Si tiene problemas para instalar o correr playwright dirígase a la guía de instalación
También le puede servir verificar como las pruebas automátizadas se definen en CI
- Hector Tenazaca (@htenezaca)
- Javier León Ferro (@andesjavierleon)
- Javier López Grau (@muniter)