我是 C# 和单元测试的新手,我一直在尝试为以下构造函数实现测试:
public Stepup()
{
InitializeComponent();
}
Stepup 是一个分部类并继承了一个接口。如何为这样的构造函数实现单元测试?除此之外,还有哪些方法可以对没有参数的简单构造函数进行单元测试?
我是 C# 和单元测试的新手,我一直在尝试为以下构造函数实现测试:
public Stepup()
{
InitializeComponent();
}
Stepup 是一个分部类并继承了一个接口。如何为这样的构造函数实现单元测试?除此之外,还有哪些方法可以对没有参数的简单构造函数进行单元测试?
当构造函数运行时,构造对象的某些不变量应该为真。您需要指定这些不变量是什么,然后在构造函数完成执行时测试它们是否为真。这里的要点是您不要在构造函数的内部实现细节中进行测试,只有您的规范所说的关于构造对象的任何内容实际上都是正确的。
例如:
class Circle {
private readonly double radius;
public double Radius {
get {
Contract.Ensures(Contract.Result<double>() >= 0));
return this.radius;
}
}
public Circle(double radius) {
Contract.Requires(radius >= 0);
this.radius = radius;
}
}
这里,构造函数完成后的不变量是Circle.Radius
返回传入的构造函数参数的值radius
。这是规范,可以测试。