我有一个带有两个模块变量的模块。我想在我的文件中将它们用于所有测试。最初我做了猴子修补,但这对于其他文件中的测试来说是一个问题,需要这些变量完好无损。 这是我目前提出的。它太可怕但它确实有效。我希望通过这本书来做更多的事情"虽然(即对我修补的所有变量保留一个缩进的东西):
{{1}}
答案 0 :(得分:0)
但我觉得这样做的正确方法是保留一个缩进。
使用包含多个上下文的语句
您可以将多个语句放入单个with
with patch.object(my_module, 'old_first_variable', new=new_first_variable), patch.object(my_module, 'old_second_variable', new=new_second_variable):
# your code here, single indent
带有多个上下文的语句,跨越多行
显然你的线路可以变得很长,这是一种打破它们的方法仍然符合PEP8
with patch.object(my_module, 'old_first_variable', new=new_first_variable), \
patch.object(my_module, 'old_second_variable', new=new_second_variable), \
patch.object(my_module, 'old_third_variable', new=new_third_variable):
# Your code here, single indent
pass
我在带有上述代码段的文件上运行pep8
,然后通过。