Условный пропуск теста
Иногда нужно пропустить тест при выполнении определённого условия. Например, вы хотите запускать тест в любой день, кроме субботы. В этом случае можно воспользоваться библиотекой datetime, чтобы получить текущий день недели, и маркером pytest для условного пропуска тестовой функции. Чтобы передать условие в маркер условного пропуска, используйте @pytest.mark.skipif(condition).
Библиотека pytest уже импортирована.
Это упражнение является частью курса
Введение в тестирование на Python
Инструкции к упражнению
- Добавьте декоратор «условного пропуска», чтобы он корректно работал.
- Передайте
condition_stringв вызов декоратора. - Завершите тесты с проверкой утверждений.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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]