Python pytest参数化我缺少必需的位置参数

Python pytest参数化我缺少必需的位置参数,python,pytest,Python,Pytest,我尝试为我的单元测试添加use pytest参数化。但我看到了“缺少必需的位置参数”的错误。你能帮我解决问题吗?谢谢 @pytest.mark.parametrize("param", ["a", "b"]) def test_pytest(self, param): print(param) assert False 我得到以下例外情况: class Tests(unittest.TestC

我尝试为我的单元测试添加use pytest参数化。但我看到了“缺少必需的位置参数”的错误。你能帮我解决问题吗?谢谢

 @pytest.mark.parametrize("param", ["a", "b"])
    def test_pytest(self, param):
        print(param)
        assert False
我得到以下例外情况:

class Tests(unittest.TestCase):
@contextlib.contextmanager
def testPartExecutor(self, test_case, isTest=False):
    old_success = self.success
    self.success = True
    try:
>       yield

           with outcome.testPartExecutor(self):
                self.setUp()
            if outcome.success:
                outcome.expecting_failure = expecting_failure
                with outcome.testPartExecutor(self, isTest=True):
>                   testMethod()
E                   TypeError: test_pytest() missing 1 required positional argument: 'param'

你的测试类不是从任何东西派生出来的,对吗?也许你有一个名为“param”的装置?乍一看,这看起来还可以。class Tests(unittest.TestCase):它与pytest一起工作-pytest知道unittest,但unittest不知道unittest.TestCase子类中的pytest.pytest功能UnitTestCase子类中的以下pytest功能工作:Marks:skip、skipif、xfail;汽车夹具;由于不同的设计理念,以下pytest功能不起作用,而且可能永远不会起作用:夹具(自动使用夹具除外,见下文);参数化;定制挂钩;啊,你是对的-这不起作用(在真正醒来之前不应该写评论…)。如果您不从任何东西派生测试类,它将起作用。