【发布时间】:2015-11-03 16:12:04
【问题描述】:
我是 Junit 的新手。我正在尝试遵循 TDD。我的任务是为一种新方法编写一个测试用例。我方法的签名是public Message getMessage(String id)
职责getMessage(String id)以messageId为参数查询DB,从resultSet填充Message对象并返回。
消息 Bean 有四个成员
- messageID:整数
- 消息:字符串
- 创作日期:日期
- 作者:字符串
我的困惑是:
- 如何编写一个使用 Dummy ID 作为方法参数的测试用例,然后验证返回的 Object Message 是否有一些预定义的虚拟值?
【问题讨论】:
-
你想在这里测试什么?听起来您需要数据库中的一些测试数据。
-
了解模拟。
-
你是如何连接到数据库的?您使用的是 JDBC 驱动程序还是对象关系管理器?您可能需要模拟连接。单元测试不会触及实时数据库。单元测试应该快速运行,并且应该尽可能地隔离被测代码。添加一个真实的数据库(即使有测试数据)会引入太多变量,以至于测试变得没那么有用。
-
@BobbyStJacques 不要为 DAO 编写单元测试:petrikainulainen.net/programming/testing/…
-
我正在使用 JDBC 驱动连接数据库。我知道我需要模拟连接/但是,我的困惑是如何使用虚拟数据验证/断言该方法的输出。所以,我需要测试用例的帮助。