6

我使用 Deltaspike CdiControl 为我的单元测试启动 CDI 容器。这很好用,但有一个问题:如果我将这种方法用于 Maven Web 应用程序,beans.xml最终会出现在src/main/webapp/WEB-INF. 这意味着它META-INF在单元测试期间不在目标文件夹的目录中。

由于单元测试本身不是webappJava SE 运行,因此该WEB-INF目录被忽略。我可以通过在单元测试中添加第二个和/或将现有文件夹复制到正确的文件夹来beans.xml解决META-INF此问题。beans.xml但这意味着我必须手动将其从战争中排除,所以看起来有点骇人听闻。

将 abeans.xml放入src/test/resources/META-INF不起作用,因为它只会允许target/test-classes检测到 CDI 组件。

这似乎是一个常见的问题,我认为之前一定有人遇到过这个问题?还是每个人都有一个单独的 Maven 模块用于组件和/或单元测试?

4

0 回答 0