İçinde bir testi atlamak istediğinizde skipve skipifdekoratörlerle bir testi işaretleyebilirsiniz.pytest .
Bir testi atlamak
@pytest.mark.skip(reason="no way of currently testing this")
def test_func_one():
...
Bir testi atlamanın en basit yolu, skipisteğe bağlı olarak geçilebilecek dekoratörle işaretlemektir.reason .
pytest.skip(reason)Fonksiyonu çağırarak test yürütme veya kurulum sırasında zorunlu olarak atlamak da mümkündür . Bu, içe aktarma sırasında atlama koşulunu değerlendirmek mümkün olmadığında kullanışlıdır.
def test_func_one():
if not valid_config():
pytest.skip("unsupported configuration")
Bir koşula göre testi atlama
@pytest.mark.skipif(sys.version_info < (3, 6), reason="requires python3.6 or higher")
def test_func_one():
...
Bir şarta göre atlamak istiyorsanız, o zaman kullanabilirsiniz skipif bunun yerine . Önceki örnekte, test işlevi Python3.6'dan önceki bir yorumlayıcıda çalıştırıldığında atlanır.
Son olarak, başarısız olduğundan emin olduğunuz için bir testi atlamak istiyorsanız, bir testin başarısız xfailolmasını beklediğinizi belirtmek için işaretleyiciyi kullanmayı da düşünebilirsiniz .
.skipMocha'nın (Node.js) sahip olduğu zarifliğe benzer bir şey var mı?it('tests something'...)->it.skip('tests something'...)bu belirli testi devre dışı bırakır. Aynı zamanda kullanışlı bir zıttı da var:.onlysadece bu testi çalıştıracak, başka hiçbir şey yapmayacak.