Unittest test suite - PullRequest
       12

Unittest test suite

1 голос
/ 09 июля 2019

У меня есть набор тестов, и я выполнил то же самое, но мой набор тестов выполнил один сценарий тестирования дважды. Я хочу выполнить тестовый скрипт только один раз, и отчет должен быть сгенерирован для того же.

Import HTMLTestRunner

class SmokeTestSuite(unittest.TestCase):
    print('Running test suite')

    dir = os.getcwd()
    testLoad = unittest.TestLoader()
    print(dir)
    test_classes_to_run = [xyz_test_class]

    suites_list = []
    for test_class in test_classes_to_run:
        suite = testLoad.loadTestsFromTestCase(test_class)
        suites_list.append(suite)
    print(suites_list)
    newSuite = unittest.TestSuite(suites_list)
    print(newSuite.countTestCases())
    timestr = time.strftime("_%Y-%m-%d_%H.%M.%S")

    resultFile = open(os.path.join(dir, "TestReport"+ timestr + ".html"), "w")
    runner = HTMLTestRunner(stream=resultFile, title='Test Report', description='Tests Execution Report') 

    runner.run(newSuite)

Выполняется один тестовый скрипт xyz_test_class два раза.

1 Ответ

0 голосов
/ 09 июля 2019

TestCase - это класс, дочерние элементы которого должны определять методы тестирования, например test_foo(self). Итак, поместите ваш код в метод, например так:

class SmokeTestSuite(TestCase):
    def test_smoke(self):
        '''your code goes here'''

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

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