我正在为 Visual Studio 2012 中的现有类“Person”编写单元测试,该类具有带有 2 个参数和一些业务逻辑的构造函数。
TestMethod()
public void VerifyPersonTest()
{
//Using PrivateObject class
PrivateObject privateHelperObject = new PrivateObject(typeof(Person));
//Some business logic
}
当我尝试在上面运行时,测试得到一个异常“System.MissingMethodException {“No parameterless constructor defined for this object.”}”。所以我已经向 person 类添加了无参数构造函数,并且能够毫无问题地运行测试。
我有以下问题
1)由于我在 person 类中添加了无参数构造函数,它会破坏 Person 类的任何现有功能吗?
2) PrivateObject privateHelperObject = new PrivateObject(typeof(Person));
上面的语句调用了person类的无参数构造函数。假设如果我想调用带有2个参数的构造函数,我该如何编写上面的语句?