Warunkowe pomijanie testów
Czasami chcesz pominąć test, gdy spełniony jest określony warunek. Na przykład możesz uruchamiać test tylko wtedy, gdy dziś nie jest sobota. W takim przypadku możesz użyć biblioteki datetime, aby pobrać bieżący dzień tygodnia, oraz znacznika pytest do warunkowego pomijania funkcji testowej. Aby przekazać warunek do znacznika warunkowego pomijania, użyj @pytest.mark.skipif(condition).
Biblioteka pytest została już zaimportowana.
To ćwiczenie jest częścią kursu
Wprowadzenie do testowania w Pythonie
Instrukcje do ćwiczenia
- Dodaj dekorator „warunkowego pomijania", aby wszystko działało poprawnie.
- Wstaw
condition_stringdo wywołania dekoratora. - Uzupełnij testy asercji.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
day_of_week = datetime.now().isoweekday()
def get_unique_values(lst):
return list(set(lst))
condition_string = 'day_of_week == 6'
# Add the conditional skip marker and the string here
____.____.____(____)
def test_function():
# Complete the assertion tests here
____ ____([1,2,3]) == [1,2,3]
____ ____([1,2,3,1]) == [1,2,3]