我有一个测试用例,当我在 VS2010 中运行测试用例时,测试用例通过了。
但是,后来我发现测试用例不正确,CheckStatus() 方法中的断言应该失败,我在调试测试用例时得到断言失败。
那么测试用例在运行模式下通过的原因是什么?
[TestMethod]
public void TestMethod() {
Invokable.Invoke(() => TestApplication.AnEvent+= CheckStatus);
try {
TestApplication.SearchCommand.Execute();
Assert.AreEqual(State.Update, TestApplication.State);
} finally {
Invokable.Invoke(() => {
TestApplication.AnEvent -= CheckStatus);
});
}
}
private void CheckStatus() {
Assert.AreEqual(State.Initial, TestApplication.State);
}