es20231 / eqp3

Equipe 3 - ES 2023.1
2 stars 0 forks source link

Tutorial de Testes do Flask #61

Open JacobAraujo opened 1 year ago

JacobAraujo commented 1 year ago

Instalação do pytest e coverage

pip install pytest coverage

Setup and Fixtures

O código de teste está localizado no diretório "tests". Este diretório está ao lado do pacote "flaskr", não dentro dele. O arquivo "tests/conftest.py" contém funções de configuração chamadas "fixtures" que cada teste usará. Os testes estão em módulos Python que começam com "test", e cada função de teste nesses módulos também começa com "test

Escrevendo testes com pytest

Vamos começar escrevendo testes simples para um módulo Python fictício chamado "calculator.py". Suponha que este módulo contenha uma função "add" que desejamos testar.


# calculator.py

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

Agora, crie outro arquivo chamado "test_calculator.py" neste mesmo diretório para escrever nossos testes usando o pytest:


# test_calculator.py

import calculator

def test_add():
    assert calculator.add(2, 3) == 5
    assert calculator.add(-1, 1) == 0
    assert calculator.add(0, 0) == 0

Usando o Coverage

Na pasta test

coverage run -m pytest

O coverage executará os testes do pytest e coletará informações sobre a cobertura de código. Se todos os testes passarem, você verá a saída do pytest mostrando que os testes foram bem-sucedidos.

Agora, para gerar um relatório execute o seguinte comando:

coverage report -m

Para testar apenas uma unidade de teste:

coverage run -m pytest .\test_foo.py