如何自动将方法添加到python单元中的现有unittest类?

时间:2016-01-11 03:11:08

标签: python python-unittest

我已阅读Adding a method to an existing object instance,我明白了。

现在我有两个目录并有一些文件,如下所示:

.
|--A
|  |--a_A.txt
|  |--b_A.txt
|--B
|  |--a_B.txt
|  |--b_B.txt

我需要比较 a_A.txt a_B.txt b_A.txt和b_B.txt

我使用pyunit,因为一个dirctory和B目标可能有很多文件,我想在每一轮都比较一下测试*函数,这个函数名是文件名,就像test_a_A

我有版本1代码,如下所示:

def _p(lst):
    def wrapper(func):
        def action(self):
            for l in lst:
                func(self, l)
        return action
    return wrapper

class CTest(unittest.TestCase):
    expect = [] # A directory file list
    actual = [] # B directory file list

    @_p(lst=expect)
    def testAction(self, filename):
        self.do_compare(filename, actual[0]) # only example

如果代码喜欢这个,它只有一个结果testcase。但是我有两个testcase,所以除了文件名之外我还需要动态生成testcase

修改

完成!我使用setattr添加动态属性。

0 个答案:

没有答案