假设我们有一个包含一些Eclipse项目和Spring 3.1的项目,最终结果是一个WAR文件。我们使用WTP进行开发。所有的单元测试和集成测试都在工作(我们的Maven自动执行此操作)。该项目在具有本地配置的WTP中运行。换句话说,一切看起来好像都准备好了。
现在,我们要针对不同平台使用不同的配置文件集来测试运行该WAR文件。该测试应仅启动上下文,并查看是否引起任何问题(属性文件中的missing / misspelt属性,用于自动装配的bean太多,...)。 AFAIK不需要访问(或可以访问)外部世界。基本上,它只应启动上下文,将其关闭并继续下一个配置。如果一个上下文失败,则构建应该中断。
我们应该怎么做?我们可以用Maven做到这一点吗?外在的东西?
编辑:忘了说:我们将使用Tomcat 6运行我们的东西。
最佳答案
听起来您正在谈论集成测试。
您应该为此查看故障保护插件:
http://maven.apache.org/surefire/maven-failsafe-plugin/usage.html
使用jetty和maven-failsafe-plugin您需要绑定以下之一
码头:奔跑,码头:奔跑爆炸或码头:奔跑
将deamon设置为true的预集成测试阶段,绑定
failsafe:集成测试到集成测试阶段,绑定
码头:停在整合后测试阶段,并最终绑定
故障安全:验证到验证阶段。这是一个例子:
另一种可能性是硒测试。硒测试需要在测试运行之前部署和运行战争。因此,有一些插件可以完成所有这些工作。
然后,您将有一个非常简单的硒测试用例,它仅向应用程序发出了一个简单的http请求以查看其是否正在运行。
您将为要测试的每个不同配置使用不同的配置文件。