浏览 2560 次
锁定老帖子 主题:借助assert快速定位错误
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-01-24
一个测试用例过了很长时间后,我们很有可能忘记里面的处理逻辑,当业务比较复杂时,一旦那个tc跑不过我们将不得不花大量时间去理清业务,如果有些细节我们没有注意到,我们又不得不花大量时间去调试,一上午往往就是这么过的。而如果此时有点提示,那就好办多了,就像Windows登录密码一样,当你忘记时,你可以点一下提示按钮,那些提示信息或许可以马上帮你想起当初设的密码了,测试用例也可以这样做。 assert方法集的第一个参数可以传一个自定义的信息,我们可以加入一段信息以表明这个错误在什么时候会发生,当发生错误时,这个信息便可以提示我们快速定位错误,而这个信息只会在assert失败时才输出。 当我们要验证缓存中存在数据时,我们可以这样写: //清除数据库操作……… UserDO udo = userInfoService.getUserByNick(nick); assertNotNull(“缓存不存在该用户对象”,udo); 一旦缓存真没数据,抛出的异常信息不仅仅是AssertionError,而且还会包含一段说明字符串 java.lang.AssertionError: 缓存中不存在该用户对象 当你看到这个信息,至少马上可以想到是缓存出问题了。如果没有这种信息,时间一久排查原因将非常困难。当然,并不是所有的assert都要加这种信息,那样好像比较痛苦,因为我们有很多assert!当你觉得这个assert需要加时就加,至于什么时候需要,就靠自己斟酌了~~~ 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-01-24
:D 确实可以很快定位问题!不错!
|
|
返回顶楼 | |