0
如何用monkeypatch或pytest.mock修补我的定制装饰器?我设法做(答案this问题)嘲笑它:在python中用模拟和pytest嘲笑装饰器
package.decorator = mytestdecorator
的问题是,它打破了在那里我真正需要的是装饰工作的一些其他测试。
如何用monkeypatch或pytest.mock修补我的定制装饰器?我设法做(答案this问题)嘲笑它:在python中用模拟和pytest嘲笑装饰器
package.decorator = mytestdecorator
的问题是,它打破了在那里我真正需要的是装饰工作的一些其他测试。
您必须控制模拟装饰器的完整生命周期并将装饰器恢复到原始状态。
它可以在几种不同的方式来完成:它建立的嘲笑装饰,并__exit__
其恢复
teardown
必须恢复装饰。pytest
夹具与终结器pytest
夹具与yield
的表达。个人而言,我喜欢@pytest.yield_fixture
,因为它使代码短,只要你意识到,所有的后夹具代码yield
声明会给出清除代码,事情是很清楚的事。
你能否提供一个例子? –