1

我在我的项目中使用nose_parametrized 包并在类级别使用@parametrized.expand 装饰器。但我不知道如何为我的 setUp 类使用参数。代码如下所示:

from nose_parameterized import parameterized    

@parameterized.expand(['par1', 'par2'])
class MyTestClass(TestCase):

    def setUp(self, par):
        super(TestCase, self).setUp()

        if par == "par1":
            do_something()
        elif par == "par2":
            do_something_else()

        do_more(par)

这种做法导致TypeError: setUp() takes exactly 2 arguments (1 given)

什么是正确的方法?

4

1 回答 1

0

使用parameterized_class

from parameterized import parameterized_class

@parameterized_class(('par', ), ['par1', 'par2'])
class MyTestClass(TestCase):
    def setUp(self):
        super(TestCase, self).setUp()

        if self.par == "par1":
            do_something()
        elif self.par == "par2":
            do_something_else()

        do_more(self.par)
于 2019-09-16T08:54:31.690 回答