在 MSpec 中存根静态方法

Stubbing static methods in MSpec

我正在尝试测试 class,它利用通过静态方法连接的存储库 class。实际存储库与数据库交互。我不想在测试中设置数据库,我只是为了确保调用存储库方法。在 RSpec 的世界里,我会做类似 allow(NodeRepository).to receive(:create).and_return(true) 的事情。 MSpec 或其他一些 .NET 测试工具中是否有类似的功能。

如果没有像 TypeMock Isolator 这样的额外测试工具,就不可能在 .NET 中存根静态方法。 .NET 上所有免费提供的模拟工具都使用无法挂接到 non-virtual 方法(静态方法是)的动态代理。