Y podemos hacer esto usando algo de estructura. Queremos que todas nuestras pruebas sean tan claras que podamos averiguar qué está sucediendo de un vistazo rápido. Y queremos usar una fórmula repetible que podamos usar una y otra vez para cada prueba que escribamos. Y el patrón que quiero enseñarte se llama arrange, act, assert. Así es como funciona. En el paso de arrange, hacemos cosas como restablecer la base de datos, sembrar algunos datos de prueba y configurar sesiones autenticadas. En el paso de act, hacemos cosas como navegar a la página objetivo, interactuar con diferentes elementos en la página, como campos de entrada y botones, y enviar formularios. En el paso de assert, seleccionamos diferentes elementos de la página, afirmamos el estado correcto e incluso verificamos que la URL sea correcta.
Ahora, usemos esta guía para escribir una prueba. Comencemos con la página de inicio. Aquí podemos ver tres nodos diferentes, y si podemos mirar las fechas, podemos ver que están ordenados en orden descendente. Así que escribamos la prueba que verifica esta funcionalidad. Vamos a comenzar dándole un nombre descriptivo, listar nodos en orden descendente por fecha de creación. Ahora, para el paso de arrange, queremos preparar el escenario, y hacemos esto sembrando algunos datos en la base de datos. Vamos a poner allí tres nodos diferentes, tercero, segundo y primero, que fueron creados en diferentes fechas. A continuación, pasamos al paso de act, y aquí simplemente vamos a la página de inicio. Eso es todo. Ahora, lo más crucial, el paso de assert. ¿Cómo podemos afirmar que los nodos están en el orden correcto?
Echemos un vistazo a la aplicación nuevamente. Tenemos los tres nodos, y necesitamos verificar que el contenido sea lo que esperamos. Pero, ¿cómo podemos seleccionarlos? En el formulario de registro, fue fácil porque podíamos simplemente seleccionar entradas por su etiqueta. Pero en la página de inicio, los nodos no tienen ninguna etiqueta. Entonces, ¿cómo los seleccionamos? Bueno, Playwright proporciona una gran solución usando algunos atributos HTML personalizados. Déjame mostrarte. Así que este es el componente de React para el nodo, y quiero que prestes atención al componente de enlace. Aquí, estamos renderizando el contenido, y este es el elemento que queremos seleccionar en nuestra prueba de Playwright, y podemos identificar este elemento usando un atributo HTML personalizado data test ID, y podemos darle cualquier nombre descriptivo que queramos. Aquí, le damos node content, y luego en nuestra prueba de Playwright, seleccionaremos todos los elementos por el ID de prueba node content, y luego haremos cuatro afirmaciones. Vamos a verificar que hay tres nodos y que los contenidos son tercero, segundo y primero. A continuación, podemos anotar cada paso, arrange, act y assert, para que sean más descriptivos. Primero, dado que hay tres nodos, cuando visito la página de inicio, entonces veo los nodos en orden descendente por fecha de creación.
Comments