繁体   English   中英

每次调用mock方法而不是在开始时调用side_effect函数?

[英]Call the side_effect function each time the mock method is called instead of at the beginning?

我需要用一堆方法来模拟一个对象。 除了一个 Mock() 对我来说是完美的。 但是对于其中一种方法,我实际上需要在运行期间调用该方法时调用一个函数。

基本上,我正在做一些基本的线程,所以为了让我的代码工作,我不能在运行之前手动给它返回值。 该函数必须在运行期间调用。

m = Mock()
m.meth.side_effect = foo()

当我这样做时,正如预期的那样,它在开始时调用foo()并永久使用该值

所以,我希望这样每当在运行期间 - m.meth被调用 - foo()被调用(并返回值)

我不确定你是否找到了答案,但你应该只分配而不是调用该方法。

m = Mock()
m.meth.side_effect = foo

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM