java - Jmock 模拟 DAO 对象

标签 java junit dao jmock

我写了一个方法,在给定正确的字符串键的情况下检索特定的字符串列表。现在,当我创建一个列表(要通过上一句中描述的方法检索的列表)并创建测试时,我可以轻松获得结果并成功通过测试。

另一方面,如果我将此列表的内容保存到数据库中的 2 列中,keyvalue 我编写了一个类,它使用内部方法检索此项目它。当我将它打印出来以控制台预期结果正确时,现在我从应用程序上下文初始化我的 DAO,在它的 bean 中它获取 session 并且因为 DAO 工作。

现在我正在尝试编写一个模拟 DAO 的测试,因为我在本地而不是在服务器上运行测试..所以我告诉 jmock 模拟它:

private MyDAO myDAO;

在设置中()

myDAO = context.mock(MyDAO.class);

我认为我是否正确地模拟了它,如何从数据库中模拟这些数据?什么是最好的方法?

有什么好的 Jmock 文档吗?在他们的官方网站上,它不是很好和清晰,你必须知道你要寻找什么才能找到它,同时不能发现一些很酷的东西。

或者有人可以用这种方法帮助我:

如何创建我将仅用于测试的应用程序上下文,以在服务器上实例化 DAO 和一些 bean。所以我可以在测试中使用它吗?也欢迎提出建议,解释。谢谢

最佳答案

Thisthis帖子描述了如何以及为什么要测试 DAO。 (您可以轻松地将 spring 和 maven 从示例中分离出来,如果您不使用它们 - 重点是使用 HSQLDB)

关于java - Jmock 模拟 DAO 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2546103/

相关文章:

java - 如何验证从java中的套接字流接收的整数

junit - 将 JMeter 报告转换为 JUnit 报告

java - 如何在没有maven依赖的情况下使用Mockito

android - Room DAO 按 ASC 或 DESC 变量排序

ms-access - Access 2007 升级 DAO 引用冲突

java - 使用多个 View /布局时在 Android 中处理触摸事件

java - Freemarker + Spring MVC 教程

java - 在套件级别并行运行 JUnit 测试?

java - DAO vs ORM( hibernate )模式

java - 在 hibernate 中使用@OneToMany 或@ManyToMany 针对未映射的类异常