我的测试/资源上是否需要persistence.xml?

时间:2017-03-11 01:29:18

标签: maven jpa integration-testing

我开发了一些添加和修改数据库记录的Web服务。我正在使用Maven。 与数据库的连接定义为Application Server(weblogic)中的数据源。所以我只有persistence.xml对数据源的引用。

现在我想做一些集成测试。我需要在这些集成测试中与数据库进行交互,但由于这些测试在容器外部运行,我是否需要在我的测试资源路径上定义另一个persistence.xml,以便我可以获得EntityManager并与之交互数据库?还有另一种方法吗?

1 个答案:

答案 0 :(得分:0)

问题是,你如何进行数据库测试的自举?只有JUnit非常复杂。

我更喜欢DeltaSpikes Test-Control Module。非常快速的测试,没有应用程序服务器,但CDI作为容器。也可以不用test persistance.xml。 Example

另一个解决方案是arquillian。引导一个完整的应用服务器,你不需要在test / resources上使用persistance.xml