Как узнать, что конкретный тест не пройден в python selenium + testrail
У меня логическая проблема. У меня есть тестовый пакет с Selenium Python + TestRails. Когда тест не пройден, все последующие тесты также не пройдены (даже тесты, которые не пройдут). Я знаю причину, моя проблема - это решение найденное.
Я использую этот метод:
if self._resultForDoCleanups.failures:
result_flag = False
elif self._resultForDoCleanups.errors:
result_flag = False
else:
result_flag = True
Результат ForDoCleanups.failures и ошибки хранят старые вещи из кодов, выполненных ранее. Я хочу знать, есть ли способ очистить эти экземпляры или другое решение.
Мой набор прост:
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(excluirServico))
suite.addTest(unittest.makeSuite(exportarGravacoes))
unittest.TextTestRunner().run(suite)
Спасибо за помощь, ребята!
1 ответ
Насколько я понимаю, ваша проблема заключается в том, что вы хотите выполнить свои тесты таким образом, чтобы каждый тест показывался как отдельный Пройденный / Неудачный.
Я думаю, что вы хотите сделать что-то вроде:
runner = unittest.TextTestRunner()
suites_to_execute = (excluirServico, exportarGravacoes)
for suite_to_execute in suites_to_execute:
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(suite_to_execute))
result = runner.run(suite)
# code to add the above individual result to testrail is to be called below
Обратите внимание, что makeSuite устарел, и вы должны использовать методы TestLoader(). LoadTestsFrom*.