Pytest: как пропустить остальные тесты в классе, если один провалился?

Я создаю тестовые случаи для веб-тестов с использованием фреймворков Jenkins, Python, Selenium2 (webdriver) и Py.test.

Пока я организую свои тесты в следующей структуре:

каждыйClass этоTest Case и каждыйtest_ method этоTest Step.

Эта настройка работает ОТЛИЧНО, когда все работает нормально, однако, когда один шаг завершается сбоем, остальные "Тестовые шаги" сходить с ума. Я могу сдержать сбой внутри класса (контрольного примера) с помощьюteardown_class()Однако я смотрю, как это улучшить.

Что мне нужно, так это как-то пропустить (или xfail) остальную частьtest_ методы в одном классе, если один из них потерпел неудачу, так что остальные тестовые примеры не выполняются и помечаются как FAILED (так как это будет ложно-положительным)

Спасибо!

UPDATE: Я не ищу или ответ "это плохая практика" так называя его, что путь очень спорно. (каждый тестовый класс независим - и этого должно быть достаточно).

UPDATE 2: Помещение & quot; если & quot; Условие в каждом методе испытаний не является опцией - это много повторной работы. Я ищу (может быть), кто-то знает, как использоватькрючки к методам класса.

Ответы на вопрос(9)

Ваш ответ на вопрос