我正在开发一个用于解密密码难题的解密程序,并且想练习使用Pytest,但是我遇到了一个棘手的错误。
这是我的代码:
import pytest
from decryptoquote import decryptoquote
class TestIntegration(object):
test_data = [
(
""" Long code string 1""",
""" Long solution string 1"""
),
(
""" Long code string 2""",
""" Long solution string 2"""
),
(
""" Long code string 3""",
""" Long solution string 3"""
),
]
@pytest.mark.parametrize("coded_quote, plaintext", test_data)
def test_is_correct(coded_quote, plaintext):
result = decryptoquote.decryptQuote(coded_quote)
assert result == plaintext
我收到“函数不使用参数'coded_quote'”错误,并且看不到原因。我使用了正确的变量名,并将它们添加到测试函数参数中(我认为这是一个常见错误)。我试过使用self.test_data而不是test_data,将test_data放在测试类之外,只是使用cryptoQuote而不是引用导入模块的版本,但是没有任何效果。
如果有人可以提供帮助,我将非常感谢。谢谢!