Uso de Marks en Pytest

Pytest proporciona un mecanismo para agregar etiquetas o marcas personalizadas en las funciones de prueba, así mismo, un test puede tener más de una etiqueta y una misma etiqueta puede estar en múltiples pruebas.

Creemos el archivo python, dentro de este archivo creamos dos métodos test_send_http() y test_something_quick(), al método test_send_http(), le agregamos una marca @pytest.mark.webtest, de forma que el archivo queda de la siguiente forma:

Podemos ejecutar los métodos que tiene la marca de la siguiente forma:

Esto nos sirve para ejecutar sólo aquellos test que hayamos marcado, también podríamos ejecutar todos los test excepto aquellos que tienen nuestra marca:

Agregar una Marca Personalizada

Las marcas se pueden registrar en el archivo pytest.ini, lo que nos permite tener información de aquellas marcas personalizadas que generemos:

Etiquetando una clase

También podemos marcar una clase, al realizar esto, cuando llamemos a dicha marca, se ejecutan todos los test que tenga esta clase:

Ejecutamos:

Ejecutamos las pruebas con -v para este archivo y observamos que se ejecuta el test con cada una de nuestras combinaciones.

Casos en los cuales se pueden aplicar las marcas:

  • Si tenemos diferentes secciones, como web-back-end o mobile-back-end, por ejemplo, se podrían realizar pruebas de una u otra sección.
  • Si tenemos diferentes versiones de un API, se podrían realizar las pruebas para una determinada versión, aquella que modificamos, de esta forma, nos enfocamos en aquellas pruebas que deseamos revisar.
Referencias:
Si te gusto, comparte ...Email this to someone
email
Share on Facebook
Facebook
Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Facebook