我的团队使用Mocha在Ruby中进行单元测试。我想用Mocha添加一个"间谍"一个方法。也就是说,我想使用Mocha编写单元测试,以验证被测代码在另一个类上调用特定方法,而不会覆盖该方法的实现。
这可能吗?如果是这样,怎么办呢?
我尝试过使用Mocha的expects
,例如:
MyModule::MyClass.expects(:my_method)
但是,这会覆盖my_method
的实施。在我的特定情况下,我需要验证是否已调用my_method
,并且在测试期间执行该方法的实际实现。