在我的 Selenium-TestNG-Maven 自动化框架中,我有用于存储“application-url”的属性文件。 Jenkins 作业就是为此配置的。我必须根据需要在 QA/Stage/Production 服务器上运行这个测试套件。但不确定如何动态提供或覆盖代码中使用的“application-url”属性。 (环境注入(inject)器插件?如何?)
根据代码,创建了 Selenium WebDriver 实例,然后 java 代码读取属性文件,并且 Selenium 实例使用相同的 URL 打开网页。
最佳答案
我通过使用 Jenkins 作业的 choice 参数动态提供 URL。
首先选择该项目参数如下图:
然后选择“添加参数”>“选择参数”,如下图所示:
然后保存。
现在,当您构建时,您将能够选择用于该特定构建的 url,如下所示:
当需要引用url时,可以使用Maven目标中的$URL将其传递给maven。
添加:这是我如何在 Maven 目标中使用选择参数的示例
我正在通过 maven 传递使用 Choice 参数定义的 ${browserName} 参数,该参数将使用系统属性“浏览器”进行引用。因此,当我想获取代码中的值时,我只需使用
System.getProperty("browser");
我可以访问传递的参数。
关于java - 如何使用 Jenkins 中的插件覆盖属性文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41969864/