【发布时间】:2023-04-03 01:27:02
【问题描述】:
我有构造函数,其中有过滤器逻辑并想对其进行测试,尽管实际上并没有为构造函数编写测试用例,但我想获得代码覆盖率,尝试了很多链接,但没有一个解释有关处理构造函数的链接。
public Myclass {
public Myclass(AnotherClass obj)
{
_key = obj.key;
_ID = obj.ID;
_CandidateMode = obj.CandidateMode;
if(_CandidateMode == obj.CandidateMode.numeric
{
//Dosomething
}
else
{
//Do something with special character.
}
}
}
【问题讨论】:
-
如果你测试类的公共方法,你的构造函数无论如何都会被执行,这意味着构造函数将被测试覆盖。
-
我已经测试了公共方法,构造函数初始化中有一些逻辑,我想单独测试!
-
构造函数中的逻辑应该通过公共方法或属性进行测试。