Запускать тестирование несколько раз с помощью Selenium Webdriver Python - PullRequest
0 голосов
/ 27 ноября 2018
class LoginTests(unittest.TestCase):

    def setUp(self):
        self.driver = Driver()
        self.driver.browser.get(basic_url)

    def test_add_user_uk(self):
        LoginPage(self.driver).login(username, password)
        AddUserPage(self.driver).test_add_user(return_uk_dict())

    def tearDown(self):
        self.driver.browser.quit()

    if __name__ == '__main__':
        unittest.main()

Я бы хотел запустить test_add_user_uk несколько раз.Можно ли сделать это в цикле?

1 Ответ

0 голосов
/ 27 ноября 2018

Я могу ошибаться, но если вы зациклите тест 'test_add_user_uk', методы setUp и tearDown не будут выполняться с тестом после первой итерации

, вы можете попробовать unittest.TestSuite для достижения этого

if __name__ == '__main__':
    def suite(num):
        suite = unittest.TestSuite()
        for i in range(num):
            suite.addTest(LoginTests('test_add_user_uk'))
        return suite

    runner = unittest.TextTestRunner()
    runner.run(suite(3))

Сказав, что, если вы можете использовать pytest, функция повтора может быть легко достигнута

https://docs.pytest.org/en/latest/

И вы можете использовать следующий плагин для запуска тестовмного раз

https://pypi.org/project/pytest-repeat/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...