单元测试对象状态有些困难。采取以下方案:
public class DemoClass
{
private int state;
public DemoClass(int state)
{
this.state = state;
}
public int State
{
get { return this.state; }
}
public void DoSomething()
{
state++;
}
}
[TestClass]
public class DemoClassTests
{
[TestMethod]
public void DoSomething_NoParam_StateEqualsThree()
{
var demoClass = new DemoClass(2);
demoClass.DoSomething();
Assert.AreEqual(3, demoClass.State);
}
}
测试中的方法不带参数并且不返回任何值,所以我没有测试它,而是它对对象的影响。其结果还取决于对象的初始化方式
这是一个正确的单元测试,单元测试的名称是否正确?