У меня есть сложный набор интеграционных тестов, который использует Perl WWW :: Mechanize для управления веб-приложением и проверки результатов на основе определенных комбинаций данных. Существует более 20 подпрограмм, составляющих логику тестов, циклически проходящих данные и т. Д. Каждый тест запускает несколько подпрограмм теста в другом наборе данных.
Веб-приложение не является идеальным, поэтому иногда ошибки приводят к сбою тестов с очень конкретными комбинациями данных. Но эти комбинации достаточно редки, и наша команда не будет долго исправлять ошибки; создание многих других новых функций имеет приоритет.
Так что мне делать с провальными тестами? Это всего лишь несколько тестов из нескольких десятков на комбинацию данных.
1) Я не могу позволить этому потерпеть неудачу, потому что тогда весь набор тестов потерпит неудачу.
2) Если мы их закомментируем, это означает, что мы пропустили этот тест для всех других наборов данных.
3) Я мог бы добавить флаг в конкретный набор данных, который не прошел, и не запускать тест, если этот флаг установлен, но тогда я передаю дополнительные флаги повсюду в моих подпрограммах теста.
Какой самый простой и простой способ сделать это?
Или чисты и легки взаимоисключающие?