【发布时间】:2019-06-14 19:37:18
【问题描述】:
我正在尝试在一个只读的类中模拟一个自定义变量,并且在 get 中有一个返回。
public class BaseController
{
public string Local
{
return GlobalVariable.Local
}
}
[TestMethod]
public void TestMethod()
{
var baseControllerMock = Substitute.For<BaseController>();
baseControllerMock.Local.Returns("local");
}
我的问题是,即使我在返回内部使用 ReturnsForAnyArgs 时,我也厌倦了寻找全局变量并且它中断了,因为
System.NullReferenceException: '对象引用未设置为对象的实例。'因为 GlobalVariable 为空。
我还尝试模拟全局变量
[TestMethod]
public void TestMethod()
{
var baseControllerMock = Substitute.For<BaseController>();
var globalVarMock = Substitute.For<GlobalVariable>();
globalVarMock.Local.returns("local");
baseControllerMock.Local.Returns("local");
}
但是当它返回时它说它仍然是空的。
【问题讨论】:
标签: c# properties mocking nsubstitute