gpt4 book ai didi

java - Spring 启动测试 : Is it a good idea to have Application class per module?

转载 作者:行者123 更新时间:2023-11-30 07:54:41 24 4
gpt4 key购买 nike

我的项目看起来像:

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依赖于businessbusiness依赖于persistence模块。在生产环境中运行时,ApiApplication 将成为主类。

但是,在运行测试时,我觉得需要添加 PeristenceApplicationBusinessApplication 才能运行用 @SpringBootTest 注释的 Spring 测试.

这真的是一个要求吗?我对 Spring-Boot 了解不多,很想知道这里的推荐是什么?

如何使用 @SpringBootTest 测试我的模块,但在 persistencebusiness 中不需要 *Application.java > 模块?

谢谢

最佳答案

我认为,从十年前开始,逐层(水平)解耦是过时的方法。我认为项目不应该是“逐层模块”或“逐层打包”的结构。

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

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

关于java - Spring 启动测试 : Is it a good idea to have Application class per module?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43882392/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com