这可能是我需要摆脱系统的哲学咆哮,另一方面,我可能做错了什么,如果是这样,请告诉我!
我有一个单元测试,看起来像这样:
[TestMethod]
[ExpectedException(typeof(NotImplementedException))]
public void Test_XXXAccess()
{
ControlPoint.MyObject.XXXAccess;
}
当测试在特定上下文中运行时,它会检查属性 XXXAccess 是否未实现。此测试生成编译错误 CS0201:“只有赋值、调用、递增、递减和新对象表达式可以用作语句”虽然我同意这是生产代码中的错误,但我认为将其应用于单元测试是错误的。当然我可以将代码重写为:
[TestMethod]
[ExpectedException(typeof(NotImplementedException))]
public void Test_XXXAccess()
{
MyType x = ControlPoint.MyObject.XXXAccess;
}
但这(对我而言)似乎更不正确,因为您现在已将其分配给一个变量,除了使错误静音之外什么也不做。
有没有更好的方法来编写测试?