我是JUnit新手,尝试在我的遗留代码库中实现它<当我测试hibernateEntity时,我应该断言什么。save()
解决方案是
public void testEntitySave() {
hibernateEntity.save()
Entity testEntity = hibernateEntity.loadEntityByPK(hibernateEntity.pk);
Assert.assertNotNull(testEntity);
}
您将在方法中调用hibernateEntity.save()。如下所示:
public boolean save(..){
boolean status = false;
try{
status = hibernateEntity.save()?
}catch(Exception e){
//handle or throw
}
return status;
}
因此,测试保存方法;您将对其返回值进行断言。因此,为了成功保存,其返回值应该为true。
基本上如此;我们用Junit测试行为。您需要测试Hibernate操作是否成功。
问题内容: 今天,我看到了一个带有Java断言而不是JUnit断言的JUnit测试用例-相对于另一个而言,优先选择一个优点还是缺点? 问题答案: 在JUnit4中,JUnit断言引发的异常(实际上是Error)与java 关键字(AssertionError)引发的错误相同,因此它与堆栈跟踪完全相同,除了您无法分辨出其区别。 话虽这么说,断言必须在JVM中使用特殊标志运行,导致许多测试似乎通过了,
有没有Hamcrest可以让我明确断言,返回对象的的方法的结果至少有一个对象包含具有特定值的属性? 例如: 测试下的方法返回一个的集合。我需要断言至少有一个人叫彼得。
问题内容: 我需要比较两个值:一个是字符串,另一个是float,因此我将字符串转换为float,然后尝试调用,但这未经授权,我猜不接受float作为参数。 在这种情况下,对我有什么解决方案? 问题答案: 您必须为Floats的断言提供一个增量: 增量是期望值与实际值之间的最大差异(delta),对于这两个数字,仍将其视为相等。
我试着 我在调试时获得和是。 如何在使用时断言大于条件
我正在使用JUnit自动化功能测试。我遇到了一个问题:如果我遵循规则“每个测试方法一个(重要的)断言”,那么每个测试用例最终会有一堆6行测试方法(17个是迄今为止最大的数字)。如果我将它们全部放入一个测试方法中,我必须注释掉失败的断言,否则一半的测试永远不会启动。 我不喜欢第一种方式,因为它启动浏览器的次数太多,而且浏览器启动登录/注销似乎比测试运行本身更“昂贵”和耗时。 第二种方法也不好,因为它
一个人如何断言在一个游戏的主体内的内容!JSON操作结果值?我正在从一个操作返回一个新的(甚至是空的)JSON ObjectNode,并试图在单元测试的结果中对其进行断言,但在response.wrappresult.body中没有看到值(null或其他)。 例如,在我的操作中,如果返回一个null JSON对象节点, 或者如果返回测试值, 然后我根据结果写一个测试, 谢了!