java - 朱尼特 : Test case for New Method which Returns Object

标签 java junit tdd

我是 Junit 新手。我正在尝试遵循 TDD。我的任务是为新方法编写测试用例。我的方法的签名是 public Message getMessage(String id)

职责getMessage(String id)是将messageId作为参数并查询DB并从resultSet中填充Message对象并返回。

消息Bean有四个成员

  • 消息ID:整数
  • 消息:字符串
  • 创建日期:日期
  • 作者:字符串

我的困惑是:

  • 如何编写一个以虚拟 ID 作为方法参数的测试用例,然后验证返回的对象消息是否包含某些预定义的虚拟值?

最佳答案

有两种方法。

  1. 如果您想在此方法中测试数据访问层代码,请使用 DBUnit。您需要先插入示例数据,然后使用此函数进行查询。测试完成后,删除样本数据。

    http://dbunit.sourceforge.net/

  2. 如果您只想检查业务逻辑。然后,您可以使用 powermock 或 easymock 模拟 getMessage 方法中的所有方法调用。并且仅测试此方法。在这里检查 powermock https://github.com/jayway/powermock

关于java - 朱尼特 : Test case for New Method which Returns Object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31941709/

相关文章:

java - 原型(prototype)插件创建的项目是否使用旧版本的依赖项?

php - Mockery 中的重载和别名有什么区别?

java - TDD 和工厂模式

java - 列表中缺少 Eclipse Indigo : Compiler compliance level 1. 7

java - 在Android Studio中添加Junit测试(从Eclipse导入的项目)

java - Cloud Endpoints 为作为命名参数传递的特殊字符生成 HTTP 404

java.lang.AssertionError : Status 404

ruby-on-rails - Controller 测试使用 Rspec 显示页面,它给出错误 nil & 并渲染空页面

java - 我可以使用 Apache Pivot 而不是 Swing 吗?

java - 如何从 Firebase 实时数据库获取数据并将其显示在微调器中?