0

我正在尝试完成一些相当简单的事情。我有一个建立战争的项目。

我正在使用 Gretty 插件来部署战争并在 Jetty 上运行它。

我想做的基本上是:

  1. 启动码头服务器
  2. 部署战争
  3. 运行测试
  4. 停止 Jetty 服务器

gretty 配置支持似乎执行以下操作的“integrationTestTask”:

  1. 启动码头服务器
  2. 运行测试
  3. 停止 Jetty 服务器

我不知道如何确保在运行测试之前部署战争。

当我这样做时 ./gradlew appStartWar - 我可以看到我的战争正在部署,我可以通过 curl/etc 对其进行测试 - 但是当我尝试运行我的自动化测试时,似乎没有办法做到这一点.. .

我想我缺少一些基本的东西 - 但我不确定是什么......任何帮助将不胜感激。

4

1 回答 1

0

我认为 Gretty 目前不支持这一点。Gretty 针对已编译的类启动 servlet 容器,而不是针对 war 文件。它不执行战争任务。在此处查看“使用 WAR”列:

http://akhikhl.github.io/gretty-doc/Gretty-tasks.html

如果您可以通过执行 ./gradlew appStart 使您的应用程序运行,那么 integrationTest 任务也应该按预期工作。您可能需要将 web.xml 放入 src/main/webapp/WEB-INF 或弄清楚如何在 war {} 配置之外配置其位置。

于 2016-08-17T09:58:45.707 回答