typestar

Testing con pytest

9 pasos en 4 series de Python.

pytest con la sentencia assert haciendo el trabajo, que es gran parte de por qué la gente lo usa. Escribir pruebas, parametrizarlas, y las tres maneras de comprobar que algo lanzó lo que tenía que lanzar.

Luego las fixtures, que son la habilidad de verdad: alcance, teardown y cómo componerlas. Seleccionar y simular cierra con marks, skips, monkeypatch y tmp_path. Nueve pasos, y cubre la mayor parte de lo que necesitas para escribir una suite de pruebas que no vayas a odiar después.

Empieza este tour

Escribir pruebas

  • Aserciones de pytestUna prueba es una función cuyo nombre empieza con test y cuyo cuerpo hace assert.
  • Probar fallaspytest.raises afirma que la llamada falla, y también cómo.
  • parametrizeUn solo cuerpo de prueba, una fila de casos y un resultado aparte por cada uno.

Fixtures

  • FixturesUn fixture construye lo que la prueba necesita y lo desmonta después.
  • Fixtures integradostmp_path, monkeypatch y capsys cubren casi todo lo que una prueba necesita.

Seleccionar y simular

  • Marcas y omisionesLas marcas etiquetan pruebas para que una corrida las seleccione o las espere.
  • unittest.mockReemplazar un colaborador para que la prueba nunca toque la red.
  • doctestEjemplos en el docstring que corren como pruebas.

Bis

  • test_suite.pyUn archivo de pytest como en un proyecto real: fixtures, parametrize, marcas.

Los otros tours de Python