【问题标题】:Modifying configs files in my.war/WEB-INF/ before deploying on Tomcat for integration tests在部署到 Tomcat 进行集成测试之前修改 my.war/WEB-INF/ 中的配置文件
【发布时间】:2011-07-15 16:20:36
【问题描述】:

我有基于 Jetty Servlet 的 REST 客户端/服务器应用程序,我部署在 Tomcat 上。客户端和服务器以及两个不同的模块。

我还创建了第三个模块(webapp-tests),它只负责启动集成测试。

我想在运行测试之前使用"Cargo" plugin 部署由服务器模块创建的“战争”的几个实例。

确实,我有一个位于“WEB-INF/”的配置文件,其中包含一些设置(如 MySQL 连接设置、超时等...)。而且我想在使用 Cargo 部署之前更改 WAR 文件中的这个配置文件,并使用多种配置(几个 MySQL 版本,...等)

你知道我该如何处理这个问题吗?

提前感谢您的帮助, 最好的问候,

拉斐尔

【问题讨论】:

  • 嗯..针对数据库的集成测试非常好,但是您为什么要针对不同的数据库进行测试?你想测试什么或者你想用它来证明什么?
  • 顺便说一句,我有几个模式填充了不同的测试数据集。我希望不同的 webapps 指向那些不同的数据集来测试不同的案例。无论如何,我想为我的标准打包 WAR 提供配置文件的虚拟/示例参数,然后用自定义集成测试设置覆盖它们:我们的合作伙伴不应该有我们内部的连接信息/密码等,集成数据库。我也听说过 WAR 插件的覆盖,但我不知道如何将它与货物部署混合。

标签: tomcat maven integration-testing war maven-cargo


【解决方案1】:

在集成测试模块中,您可以使用dependency-plugin获取依赖项(war-file)并解压war文件并替换配置文件并运行集成测试。这仅取决于您调用集成测试的频率...

【讨论】:

  • 您好,感谢您的回答。我找到了如何复制/解压缩依赖项,但没有找到如何使用自定义配置文件资源更改/重新打包 war 文件:maven.apache.org/plugins/maven-dependency-plugin/examples/… 我错过了什么吗?你有这种配置的例子吗?提前致谢。拉斐尔
  • 使用组装插件重新打包你的war文件。抱歉,没有这样的例子。
猜你喜欢
  • 1970-01-01
  • 2011-12-15
  • 2013-05-31
  • 2013-08-09
  • 1970-01-01
  • 2017-09-10
  • 1970-01-01
  • 2013-03-20
  • 1970-01-01
相关资源
最近更新 更多