Você pode marcar um teste com os decoradores skip
e skipif
quando quiser pular um teste no pytest
.
Pulando um teste
@pytest.mark.skip(reason="no way of currently testing this")
def test_func_one():
...
A maneira mais simples de pular um teste é marcá-lo com o skip
decorador que pode ser aprovado em um opcional reason
.
Também é possível pular imperativamente durante a execução ou configuração do teste chamando a pytest.skip(reason)
função. Isso é útil quando não é possível avaliar a condição de ignorar durante o tempo de importação.
def test_func_one():
if not valid_config():
pytest.skip("unsupported configuration")
Pular um teste com base em uma condição
@pytest.mark.skipif(sys.version_info < (3, 6), reason="requires python3.6 or higher")
def test_func_one():
...
Se você quiser pular com base em uma condição, poderá usar skipif
. No exemplo anterior, a função de teste é ignorada quando executada em um interpretador anterior ao Python3.6.
Por fim, se quiser pular um teste porque tem certeza de que ele está falhando, você também pode usar o xfail
marcador para indicar que espera que um teste falhe.
.skip
que o Mocha (Node.js) tem?it('tests something'...)
->it.skip('tests something'...)
que desabilitaria aquele teste específico. Ele também tem o oposto útil: o.only
que executará apenas aquele teste e nada mais.