我有一个python unitest。在setupClass方法中,我花了一些时间来完成任务...测试本身运行速度非常快。现在我想用多组参数运行相同的Testcase。我怎样才能做到这一点?Python测试如何运行参数化测试用例并将参数传递给setupClass
我试过differet与nose_parameterized等方法,但有我不能使用@ parameterized.expand()
import unittest
from nose_parameterized import parameterized
parameters = [('test1', 2),('test2', 3)]
class TestParameterizedTestcase(unittest.TestCase):
@classmethod
def setUpClass(cls, param=1):
"""
Do some expensive stuff
"""
cls.param = param
print 'Param in setup class %s'
def test_is_one(self):
"""
A fast test
"""
self.assertEqual(1,self.param)
def test_is_two(self):
"""
Another fast test
"""
self.assertEqual(2, self.param)
def test_is_three(self):
"""
Another fast test
"""
self.assertEqual(3, self.param)
您可以使用unittest.subTest情况管理器 - 看到这个线程http://stackoverflow.com/questions/43912153/executing-single-unittest-over-a - python中的序列 – volcano