Упорство после функции в классе

Я использую декоратор упорства, чтобы повторить тест, когда он терпит неудачу, и после того, как тест не пройден, программа должна выполнить фазу очистки, поэтому я использовал декоратор упорства следующим образом:

           class MyTests(unittest.TestCase)

     def setUp(self):
       self.driver = access()
    
     def tearDown(self):
       self.driver.close()

     def clear(retry_state):
       retry_state.args[0].tearDown()
       retry_state.args[0].setUp()
       retry_state.args[0].driver.implicitly_wait(2)
       clean_campaigns_when_fails(retry_state.args[0].driver)

     @retry(stop=stop_after_attempt(2), wait=wait_fixed(2), after=clear)
     def test_foo(self):
       # code here

Функция очистки Tenacity нуждается в параметре «retry_state», который создает конфликт с «я» класса. Единственный способ, который я нашел, чтобы заставить его работать, - это использовать retry_state.args, но я не знаю, правильно ли это, даже если программа не выдает ошибку. Любые предложения о том, как правильно использовать «я» в этом случае?

0 ответов

Другие вопросы по тегам