我正在尝试为 void 方法创建一些单元测试。基本上,该方法旨在显示系统用户的角色并在软件中实现它。
这是方法:
public void setPersonObj(Person typeObj)
{
this.typeObj = typeObj;
createMain();
}
如何在使用单元测试来检查此方法的单独类中创建断言案例?
非常感谢
如果该方法是void
它显然有一些副作用。否则这将是一个空操作。所以你别无选择,需要验证这些副作用。
如何测试这些副作用取决于您使用的技术和测试方法:
如果该方法调用其他一些协作者/对象,mock然后验证模拟
if it 改变状态一些其他组件(向集合添加元素、修改字段)查询并断言它们
if it 储存一些东西在磁盘/数据库上,也查询它们
如果它在 Swing 中显示某个窗口,则需要使用Swing测试框架如舔窗户者 http://code.google.com/p/windowlicker/
如果......你可以提供一些更多的技术details?
顺便说一句,执行一些额外的不相关逻辑的 setter 是一种代码味道。维护这样的代码的人会发现很难弄清楚这个无辜的人setPersonObj()
做一些除了...设置之外的事情。
还有所有这些名称:Person
, PersonObj
and typeObj
为了与 JavaBean 规范的一致性和兼容性,应该是相同的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)