我想做一个 Spring MVC Rest 服务的集成测试。此测试的目的主要是测试 REST 部分,而不是整个应用程序。这意味着我想使用 HSQLDB 而不是 PostgreSQL 的主数据库。同时,我希望将 Rest 服务部署在 Tomcat 上,以更接近我们的实际目标。
我在最后找到了这个博客及其示例应用程序,这真的很接近我的需要:http: //johndobie.blogspot.fr/2012/04/unit-and-integration-tests-with-maven.html 它使用 cargo maven 插件启动 tomcat 并启动集成测试。
我唯一的问题是:我怎样才能像简单的单元测试一样使用特殊的 ApplicationContext 进行测试?
如果我理解正确,集成测试使用与实际应用程序相同的 war 文件。这意味着战争使用生产 web.xml,它调用使用真实数据库的生产 ApplicationContext.xml(我们使用属性占位符来表示某些参数,但不用于 Hibernate 的方言)。
所以我的问题是:有没有办法使用测试 web.xml 或至少测试 ApplicationContext.xml 进行集成测试?
谢谢你。