Para executar os testes contendo uma string em seu nome, podemos usar a seguinte sintaxe -
pytest -k <substring> -v
-k <substring> representa a substring a ser pesquisada nos nomes de teste.
Agora, execute o seguinte comando -
pytest -k great -v
Isso executará todos os nomes de teste com a palavra ‘great’em seu nome. Neste caso, eles sãotest_greater() e test_greater_equal(). Veja o resultado abaixo.
test_compare.py::test_greater FAILED
test_compare.py::test_greater_equal PASSED
============================================== FAILURES
==============================================
____________________________________________ test_greater
____________________________________________
def test_greater():
num = 100
> assert num > 100
E assert 100 > 100
test_compare.py:3: AssertionError
========================== 1 failed, 1 passed, 3 deselected in 0.07 seconds
==========================
Aqui no resultado, podemos ver 3 testes desmarcados. Isso ocorre porque esses nomes de teste não contêm a palavragreat neles.
Note - O nome da função de teste ainda deve começar com 'teste'.