我正在尝试为void方法创建一些单元测试.基本上,该方法旨在显示系统用户的角色并在软件中实现它.
这是方法:
public void setPersonObj(Person typeObj)
{
this.typeObj = typeObj;
createMain();
}
Run Code Online (Sandbox Code Playgroud)
如何在单独的类中创建一个断言案例,该类使用单元测试来检查此方法?
非常感谢
Tom*_*icz 13
如果方法void明显有一些副作用.否则它将是一个无操作.所以你别无选择,需要验证这些副作用.
如何测试这些副作用取决于您使用的技术和测试方法:
如果该方法调用其他一些协作者/对象,则模拟它们并在之后验证模拟
如果它改变了一些其他组件的状态(将元素添加到集合,修改字段)查询并断言它们
如果它在磁盘/数据库上存储了某些东西,也可以查询它们
如果它在Swing中显示一些窗口,你需要使用像Window Licker这样的Swing测试框架
如果......您可以提供更多技术细节吗?
BTW执行一些额外无关逻辑的setter是代码气味.维护这些代码的人会发现很难弄清楚这个无辜setPersonObj()者除了......设置之外还会做些什么.
此外所有这些名字:Person,PersonObj并typeObj应保持一致,并与JavaBean规范的兼容性相同.
| 归档时间: |
|
| 查看次数: |
14757 次 |
| 最近记录: |