我即将在单元测试中使用Microsoft.Fakes。我读了一个tutorial,其中Microsoft.Fakes为接口创建了一个存根(在解决方案中实现),但在我的解决方案中,存根仅可用于类。为什么在Microsoft.Fakes中没有接口的存根存根
你能告诉我,我应该怎么做也为所有intercaes存根。接口和类都被定义为public。
我即将在单元测试中使用Microsoft.Fakes。我读了一个tutorial,其中Microsoft.Fakes为接口创建了一个存根(在解决方案中实现),但在我的解决方案中,存根仅可用于类。为什么在Microsoft.Fakes中没有接口的存根存根
你能告诉我,我应该怎么做也为所有intercaes存根。接口和类都被定义为public。
Fakes默认为类和接口生成存根。您可能遇到了当前的限制之一,这会导致Fakes跳过您的界面。要解决问题,
在Visual Studio 2012即将推出的季度更新1中,无论日志记录设置如何,在错误列表窗口中都会将此信息报告为警告,这将使故障排除变得更加容易。
您可能还没有钻到适当的名称空间。假冒产品与接口在被测组件中的相同命名空间中生成。因此,例如,如果您正在测试MyApp.Validators.IRequestValidator,则在您的单元测试中,您必须使用new MyApp.Validators.Fakes.StubIRequestValidator()
而不是new MyApp.Fakes.StubIRequestValidator()
。
嗨奥列格,谢谢你的回应。 由于任何原因,它没有帮助。但是我此时在一个新的空项目上测试了Fakes的功能,并且有接口的存根。我在两个项目文件上做了一个小文件比较,但是我找不到任何显着差异。 – llasarov