我们这样做是为了在<代码>unittest框架内进行实际的<>integration<>em>(回归)测试(实际上是一种内部定制,给我们带来巨大好处,例如,在一组机器上同时进行测试等——这一定制的巨大附加价值正是为什么我们更愿意使用<代码>unittest框架。
每一试验在档案中都有代表(该试验中使用的参数,随后是预期结果)。 我们的融合——测试从目录中读到所有此类档案,然后打电话:
def addtestmethod(testcase, uut, testname, parameters, expresults):
def testmethod(self):
results = uut(parameters)
self.assertEqual(expresults, results)
testmethod.__name__ = testname
setattr(testcase, testname, testmethod)
我们从一个空洞的试样开始:
class IntegrationTest(unittest.TestCase): pass
之后称为addtestmethod(融合) 测试,......
,其中,我们重新阅读了所有相关档案,并将其分类,以便获得测试名称、参数和成果。
最后,我们称之为我们的内部专业测试操作员,该试验是重提的(对一组现有机器进行测试,收集结果等)。 我们不想重新发明这一富附加值的轮轮轮,因此,我们重新做一个试验案例,接近于一个典型的“手编码”案例,而这种试验是“装饰”对我们来说是可行的。
除非有具体理由(良好测试操作员或类似原因)使用<代码>unittest进行(一体化?)测试,否则你可能会发现你的生活更加简单,采取不同的做法。 然而,这非常可行,我们对其结果感到非常高兴(其中大多包括大量融合/回归测试的bla缩-法斯特)。