【发布时间】:2019-06-29 22:01:23
【问题描述】:
我有一个用例,我需要模拟一个成员变量,但我希望它在每次访问时返回不同的值。
示例;
def run_test():
myClass = MyDumbClass()
for i in range(2):
print(myClass.response)
class MyDumbClass():
def __init__(self):
self.response = None
@pytest.mark.parametrize("responses", [[200,201]])
@patch("blah.MyDumbClass")
def test_stuff(mockMyDumbClass, responses)
run_test()
assert stuff
我在这里希望的是在 run_test 方法中,第一次迭代将打印 200,然后下一次将打印 201。这可能吗,一直在查看 unittest 和 pytest 文档,但找不到任何关于在这种时尚。 刚开始用python3学习pytest和unittest,如果风格不是最好的请见谅。
【问题讨论】:
-
您能否将我链接到我应该查看您建议的更改的文档,一直在查看 unittest 并且仍然不太了解如何使用补丁执行 with 语句将适用于我的用例。
-
其实,无视我上面的评论,纯属垃圾。我会尽快给你写一个答案。
标签: python-3.x pytest python-unittest