C# 通过类级字段/变量从MOQ转换为NSSubstitute Mock
我不熟悉NSubstitute,30分钟后我找不到如何模拟类级字段/变量 在MOQ中,我会这样做:C# 通过类级字段/变量从MOQ转换为NSSubstitute Mock,c#,nsubstitute,C#,Nsubstitute,我不熟悉NSubstitute,30分钟后我找不到如何模拟类级字段/变量 在MOQ中,我会这样做: public class PlanControllerTest { Mock<IDataAccessTemplate> _template = new Mock<IDataAccessTemplate>(); [TestMethod] public void BadDataResponse() { Mock<ISome
public class PlanControllerTest
{
Mock<IDataAccessTemplate> _template = new Mock<IDataAccessTemplate>();
[TestMethod]
public void BadDataResponse()
{
Mock<ISomethingElse> other = new Mock<ISomethingElse>();
}
}
公共类平面控制器测试
{
Mock _template=新建Mock();
[测试方法]
public void BadDataResponse()
{
Mock other=新Mock();
}
}
但是,重构以替代我使用的:
public class PlanControllerTest
{
???? _template = Substitute.For<IDataAccessTemplate>();
[TestMethod]
public void BadDataResponse()
{
var other = new Substitute.For<ISomethingElse>();
}
}
公共类平面控制器测试
{
??U模板=替换为();
[测试方法]
public void BadDataResponse()
{
var other=新的替换项For();
}
}
我无法理解的是类级声明。
我已经在这里完成了基本教程:
我通过谷歌找到的最接近的是:
这肯定不是第一次问这个问题了???请参见代码。For的实现将返回T。因此,应该使用IDataAccessTemplate进行编译。使用dynamic关键字是一个选项。Visual Studio应该提供返回类型的线索。如果将文档更新为
isomointerface substitute=substitute.For()
会有帮助吗?我对此唯一的保留意见是,var
似乎是用C#编写的最常见的方式,也许文档应该反映这一点?