【发布时间】:2012-11-17 23:24:00
【问题描述】:
Application-context.xml 在 web 模块中
pom
- 用户
- 具有业务逻辑和 daos 的各种其他模块
- web 只依赖于服务层。只和你的朋友聊天。
Web 将用户作为依赖项。我(不应该)不能让依赖项反过来,因为它是循环的,所以我如何使用 web 中的应用程序上下文进行测试?
我:
1. 复制数据源信息的应用程序上下文? (代码气味)
2. 将DB应用上下文放在依赖链底部的hibernate-dependency项目中?
3。其他答案?
2 号似乎是最好的选择。当一切都在一个服务模块中时,我的测试工作正常,但我试图获得更多的模块化,所以我将用户特定的服务重构为一个单独的模块。
感谢您的任何想法。 实际上,我选择在 web 和模块之间添加一个层,也称为服务,而不是在模块层中添加服务。我不认为这是典型的,但它提供了更好的信息隐藏并有助于强制执行打开/关闭。它与这个场景无关,所以我没有包含它。
工具:
- Intellij 11
- 朱尼特
- Maven 2
- 休眠 3
- 春天 3
- MySql5.5
【问题讨论】:
-
我用我选择的解决方案留下了答案。
-
仍然对更多输入感兴趣。我专业地在这个堆栈上完成的开发工作我没有做过太多的测试,所以我从来没有遇到过这个问题。
标签: spring testing maven junit