从 Maven 命令行 TestNG 更改 .properties 值
Posted
技术标签:
【中文标题】从 Maven 命令行 TestNG 更改 .properties 值【英文标题】:Change .properties values from maven command line TestNG 【发布时间】:2021-02-06 05:39:59 【问题描述】:我的项目是基于 maven+TestNG+Selenium 的,我们的要求是从 maven 命令行编辑 src/test/resources/collector.properties 中存在的属性文件的值。请注意,我们有多个属性文件,只能在属性文件下方进行编辑
例如:mvn test -Dtest=ScenarioLogin#Login -Dreport.host=http://10.120.100.70:2023/api/reports/ -Dreport.token=akjfs3425645XXXX
使用上面的命令我应该能够更新以下值
collector.properties:
report.host = http://10.123.123.70:8080/api/
report.token=XXXXXXXX
POM.XML
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>$org.apache.maven.plugins.maven-compiler-plugin.version</version>
<configuration>
<encoding>UTF-8</encoding>
<source>$source.and.target.JVM.version</source>
<target>$source.and.target.JVM.version</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>$org.apache.maven.plugins.maven-surefire-plugin.version</version>
<executions>
<execution>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
请帮忙看看如何实现,pom.xml中需要修改什么
【问题讨论】:
【参考方案1】:看起来您想通过系统属性覆盖属性值。如果是这样,您的实现应该在解析属性时支持/注意。比如QAF-Testng-extension支持different ways of providing prop。
【讨论】:
以上是关于从 Maven 命令行 TestNG 更改 .properties 值的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 maven mvn test 命令行运行动态 testng.xml?
无法编译 TestNG 测试套件(Maven+Surefire)
如何在 Eclipse 上运行 Maven 单元测试(testng)?
从命令提示符运行testng.xml。我有从Maven Project创建的jar。 Surefireplugin并没有解决我的目的