我习惯在最后用*Test.java
命名我的JUnit Integration测试,例如DatabaseConnectionTest.java
并将它们放在他们自己的集成测试目录中:例如test/integration/com...
在加入一个新项目时,我被指示
不,所有测试都在一个目录中,我们通过文件名后缀上的模式匹配来区分单元测试和集成测试。
所以上面的文件会变成DatabaseConnectionIT.java
现在我可以看到这里的逻辑。测试运行器脚本可以只为它正在寻找的文件进行模式匹配,并且所有测试都在一个位置。
但我从未听说过这个惯例。
我的问题是: JUnit Integration的'IT.java'
文件名后缀(而不是'Test.java'
)是否符合约定?
答案 0 :(得分:14)
IT.java
后缀是Maven Failsafe Plugin使用的约定。测试目录中具有后缀IT
的所有类都由此插件在integragion-test
阶段执行。 (后缀为Test
的测试由test
阶段的Maven Surefire Plugin提供。