Jmock模拟DAO对象

时间:2010-03-30 14:44:59

标签: java junit dao jmock

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

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

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

private MyDAO myDAO;

在setup()

myDAO = context.mock(MyDAO.class);

我认为我正确地嘲笑它,我怎样才能从数据库中模拟这些数据?什么是最好的方式?

有没有好的Jmock文档?在他们的官方网站上它不是很清楚,你必须知道你寻找它是什么,在同一时间找不到一些很酷的东西。

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

如何创建应用程序上下文,我将仅用于测试,在服务器上实现DAO和少数bean。所以我可以在测试中使用它?也建议,解释都欢迎。谢谢

2 个答案:

答案 0 :(得分:2)

Thisthis帖子描述了测试DAO的方式和原因。 (您可以轻松地将spring和maven与示例隔离,如果您不使用它们 - 重点是使用HSQLDB)

答案 1 :(得分:0)

MyDAO是一个界面,你只能模仿界面。