EJB的集成测试

时间:2013-02-15 10:54:30

标签: spring integration-testing junit4

我有一组EJB,它通过一组DAO类来保存和检索Sybase数据库中的数据。 DAO类是POJO,它通过JDBC数据源直接执行sql过程(预处理语句)。 在数据库中使用一些有意义的模拟数据,为这些EJB准备集成测试套件的适当框架是什么? spring / junit能提供一些帮助吗? 任何建议都表示赞赏。

1 个答案:

答案 0 :(得分:0)

我认为单元测试足够取决于您要验证的内容。

如果您只需要测试EJB,我会使用在内存中工作的DAO的模拟版本(例如,带有HashMap的DAO来保存和检索数据),这样您就可以将测试集中在输入和EJB方法的输出。这样,您还可以以编程方式填充测试数据。

如果您还需要测试DAO生成的Sybase语句,我认为您可以将实际执行语句的方法与生成SQL的方法分开,这样您就可以验证生成的SQL而无需连接到数据库

如果确实需要针对数据库引擎验证测试,可以尝试使用有效的数据库连接为集成测试配置Profile,并将此连接绑定到DAO bean。您甚至可以通过脚本使用一些测试数据填充此数据库。