Pytest

Pytest é um framework de teste para Python.

Para instalar é só fazer o comando pip install pytest.

Ao executar o comando pytest, ele procurará os arquivos que começam com test_*.py e executará os testes que respeitem essa nomenclatura.

Tutorial Pytest

Os testes do pytest devem ter sempre um assert seguido pela função que será testada.

                            def soma(a,b):
                                return a+b

                            def test_soma():
                                assert soma(1, 2) == 3   
                    

Ao terminar a execução o pytest informa os testes que foram um sucesso, os que falharam e a linha onde o erro ocorreu.

Fixtures

Com o decorador @pytest.fixtures é possível escrever uma função que pode ser reaproveitada por vários testes.

Escopos

Existem cinco escopos de fixtures diferentes no pytest: função, classe, módulo, pacote e sessão

Os escopos permitem que o usuário defina quando uma fixture deve ser chamada. O escopo padrão de uma fixture é de função, ou seja é chamado toda vez que uma função com fixture é executada. No caso de uma fixture com o escopo de classe é chamada uma vez a cada teste de classe e assim sucessivammente.