Попробуйте добавить метод init в MainTestCases, например так:
class MainTestCases(unittest.TestCase):
def __init__(self, methodName, template_id):
super(MainTestCases, self).__init__(self, methodName)
self.template_id = templateId
def setUp(self):
... and so on...
Из-за этой настройки вам нужно будет создать свой набор тестов вручную, потому что каждый тестовый случай должен бытьсоздается с помощью template_id, вот так -
def suite(template_id):
testcasenames = unittest.defaultTestLoader.loadTestsFromTestCase(MainTestCases)
suite = []
for case in testcasename:
suite.append(MainTestCases(case, template_id)
return suite
Затем в main вместо unittest.main () выполните:
- Команда разбора-Строковые аргументы.Возможно, вы захотите рассмотреть модули argparse (2.7+) или optparse (2.6 и более ранние).Они мощные, но их легко начать с просмотра примеров.
- Создайте и запустите пакет: unittest.TextTestRunner (). Run (suite (template_id))