当前位置: 首页 > 知识库问答 >
问题:

JUnit:在Hibernate保存时断言什么

伯博
2023-03-14

我是JUnit新手,尝试在我的遗留代码库中实现它<当我测试hibernateEntity时,我应该断言什么。save()

共有2个答案

那昊
2023-03-14

解决方案是

public void testEntitySave() {
  hibernateEntity.save()

Entity testEntity = hibernateEntity.loadEntityByPK(hibernateEntity.pk);

Assert.assertNotNull(testEntity);

}
辛渝
2023-03-14

您将在方法中调用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对象节点, 或者如果返回测试值, 然后我根据结果写一个测试, 谢了!