我的项目看起来像:

myProject/
         /persistence/pom.xml
         /persistence/src/main/java/PersistenceApplication.java
         /persistence/src/main/java/**.java

         /business/pom.xml
         /business/src/main/java/BusinessApplication.java
         /business/src/main/java/**.java

         /api/pom.xml
         /api/src/main/java/ApiApplication.java
         /api/src/main/java/**.java


api取决于business,而business取决于persistence模块。在生产中运行时,ApiApplication将是主要类。

但是,在运行测试时,我觉得需要添加PeristenceApplicationBusinessApplication以便运行以@SpringBootTest注释的Spring测试。

真的需要吗?我对Spring-Boot不太了解,很想知道这里的建议是什么?

如何在不使用@SpringBootTest*Application.java模块中的persistence的情况下使用business测试模块?

谢谢

最佳答案

我认为,分层分离(水平)是十年前的过时方法。我认为该项目不应“按模块”或“按包”构建。

它的结构应为“按功能打包”或“按功能模块”或“按功能微服务”(垂直解耦)。

使用垂直解耦,您将在集成测试中涵盖一个包/模块/微服务中的某些功能,因此您的考虑自然会消失。

09-10 03:14
查看更多