Aan de slagGa gratis aan de slag

Voorwaardelijk overslaan

Soms wil je een test overslaan als aan een bepaalde voorwaarde is voldaan. Bijvoorbeeld: je wilt een test uitvoeren, behalve als het vandaag zaterdag is. In dat geval kun je de datetime-bibliotheek gebruiken om de huidige weekdag op te halen en de pytest-marker om de testfunctie voorwaardelijk over te slaan. Om een voorwaarde door te geven aan de pytest-marker voor voorwaardelijk overslaan, kun je @pytest.mark.skipif(condition) gebruiken. De pytest-bibliotheek is al voor je geïmporteerd.

Deze oefening maakt deel uit van de cursus

Introductie tot testen in Python

Cursus bekijken

Oefeninstructies

  • Voeg de "conditional skip"-decorator toe om dit te laten werken.
  • Voeg de condition_string toe aan de decorator-aanroep.
  • Maak de assert-tests af.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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]
Code bewerken en uitvoeren