Pruebas de regresión

Las pruebas de regresión garantizan la compatibilidad continua con las operaciones requeridas por las aplicaciones o los usuarios de frontend. Es decir, la validación de los cambios en el esquema GraphQL (integridad del esquema) en relación con estas operaciones para garantizar que no haya cambios disruptivos ni regresiones en su API de GraphQL.

Pruebas de regresión con Hasura

Normalmente, la instancia de producción debería configurarse para ejecutar conjuntos de pruebas de regresión, ya que los cambios en el esquema Postgres subyacente y/o la configuración de Hasura podrían dar lugar a regresiones no deseadas en el esquema. Esto es crucial para probar nuevas funciones o eliminar funciones existentes.

Crear un conjunto de pruebas

En la consola Hasura Cloud, en la pestaña Pro/Monitorización, diríjase al Regresstion Tests del final. Seleccione las acciones a las que suele accederse desde el cliente frontend. En nuestro modelo de slack, deberíamos agregar tanto los usuarios como las consultas del canal que hayamos probado hasta entonces. Haga clic en Add to test suite. Una vez agregado esto podremos realizar un cambio en el esquema para verificar si se ha detectado alguna regresión.

Crear un conjunto

Abra la consola Hasura a través de la CLI. (http://localhost:9695). Ahora vamos a realizar un cambio de esquema en la tabla de canales para renombrar la columna name como channel_name.

A continuación, ejecute el conjunto de pruebas a través de la pestaña Run Tests. Ahora, la consulta del canal debería fallar.

Ejecutar un conjunto de pruebas de regresión

Con el siguiente error field "name" not found in type: 'channel'.

Este tipo de pruebas garantizan que los cambios disruptivos no pasen a producción sin las actualizaciones pertinentes para el cliente.

Nota: podemos seleccionar el conjunto de pruebas desde cualquier otro proyecto en la nube para ejecutarlo en el proyecto actual. Esto resulta útil cuando el conjunto de pruebas configurado en la instancia de producción funciona en el entorno de ensayo tras el cambio del esquema.

Did you find this page helpful?
Start with GraphQL on Hasura for Free
  • ArrowBuild apps and APIs 10x faster
  • ArrowBuilt-in authorization and caching
  • Arrow8x more performant than hand-rolled APIs
Promo
footer illustration
Brand logo
© 2024 Hasura Inc. All rights reserved
Github
Titter
Discord
Facebook
Instagram
Youtube
Linkedin