Maven / Spring:生成WAR的自动测试运行

时间:2012-11-15 13:00:57

标签: spring testing maven war

假设我们有一个由一些Eclipse项目和Spring 3.1组成的项目,最终结果是一个WAR文件。我们使用WTP进行开发。所有的单元测试和集成测试都在工作(我们的Maven自动完成)。该项目使用本地配置在WTP中运行。换句话说,一切看起来好像已经准备好了。

现在我们要测试为不同平台运行具有不同配置文件集的WAR文件。测试应该只启动上下文,看看是否会导致任何问题(属性文件中缺少/ misspelt属性,自动连接的bean太多,......)。 AFAIK没有必要访问(或可访问)外部世界。基本上它应该只启动上下文,关闭它并继续下一个配置。如果一个上下文失败,则构建应该中断。

我们该怎么做?我们可以用Maven做到吗?外在的东西?

编辑:忘了说:我们将用Tomcat 6运行我们的东西。

1 个答案:

答案 0 :(得分:0)

听起来你在谈论集成测试。 您应该查看故障安全插件: http://maven.apache.org/surefire/maven-failsafe-plugin/usage.html

  

使用jetty和maven-failsafe-plugin你需要绑定其中一个   jetty:run,jetty:run-explosion或jetty:run-war to the   预集成测试阶段,deamon设置为true,绑定   failsafe:集成测试到集成测试阶段,绑定   jetty:停止到集成后测试阶段并最终绑定   failsafe:验证验证阶段。这是一个例子:

另一种可能性是硒测试。 Selenium测试需要在运行测试之前部署和运行war。所以有插件可以做到这一切。 然后你会有一个非常简单的selenium测试用例,只是向应用程序发出了一个简单的http请求,看它是否正在运行。

您可以为要测试的每个不同配置使用不同的配置文件。