Możesz oznaczyć test przy użyciu dekoratorów skipi, skipifjeśli chcesz pominąć test pytest.
Pomijanie testu
@pytest.mark.skip(reason="no way of currently testing this")
def test_func_one():
...
Najprostszym sposobem pominięcia testu jest oznaczenie go skipdekoratorem, który może zostać zaliczony opcjonalniereason .
Możliwe jest również bezwzględne pominięcie podczas wykonywania testu lub konfiguracji przez wywołanie pytest.skip(reason)funkcji. Jest to przydatne, gdy nie można ocenić warunku pominięcia w czasie importu.
def test_func_one():
if not valid_config():
pytest.skip("unsupported configuration")
Pomijanie testu na podstawie warunku
@pytest.mark.skipif(sys.version_info < (3, 6), reason="requires python3.6 or higher")
def test_func_one():
...
Jeśli chcesz pominąć na podstawie warunku, możesz użyć skipifzamiast tego. W poprzednim przykładzie funkcja test jest pomijana, gdy jest uruchamiana na interpreterze wcześniejszym niż Python3.6.
Wreszcie, jeśli chcesz pominąć test, ponieważ masz pewność, że się nie powiedzie, możesz również rozważyć użycie xfailznacznika do wskazania, że spodziewasz się, że test się nie powiedzie.
.skipktórą ma Mocha (Node.js)?it('tests something'...)->it.skip('tests something'...)co spowodowałoby wyłączenie tego konkretnego testu. Ma również przydatne przeciwieństwo:.onlyktóry uruchomi tylko ten test i nic więcej.