这个“问题”是一个奇怪的 MSTest 行为的文档,我已经撞了几次头,希望它对遇到同样问题的其他人有用。考虑以下测试:
[TestClass]
public class SomeTest {
private List<int> _list;
[TestInitialize]
public void SetUp() {
DoSomething();
_list = new List<int>();
}
[TestMethod]
public void SomeTestMethod() {
_list.Add(42);
...
}
}
运行它会产生一个System.NullReferenceException: Object reference not set to an instance of an object.
在线_list.Add(42);
。看起来SetUp()
,虽然它具有正确的public void
签名和[TestInitialize]
属性,但没有被调用。发生了什么?