如何通过命令行与黄瓜功能文件通过黄瓜选项传递应用程序URL ?



目前我们有9个不同的URL在我们的需求范围和它实现为配置文件应用程序URL。每次如果我必须更改应用程序URL,我需要手动更新配置文件中的URL,然后我可以执行require场景,这是一项繁琐的任务。

我想在命令行参数中传递应用程序URL。

配置文件的当前配置。

#application.url=http://node-1.nginx.portal.da-1.can.qa.aws.com
#http://node-1.nginx.portal.da-1.QA1.aws.com
#http://node-1.nginx.portal.da-1.QA2.qa.aws.com
#http://node-1.nginx.portal.da-1.QA3.qa.aws.com
#http://node-1.nginx.portal.da-1.QA4.qa.aws.com
#http://node-1.nginx.portal.da-1.QA5.qa.aws.com
#http://node-1.nginx.portal.da-1.QA6.qa.aws.com
public void LaunchApplication() {
LOG.info("Launching web application URL: " + CONFIG.getProperty("application.url"));
driver.manage().deleteAllCookies();
driver.get(CONFIG.getProperty("application.url"));
}

假设您正在将selenium cucumber测试作为maven项目运行。

使用maven,你可以创建尽可能多的maven系统属性,我用Jenkins为我的CI/CD构建管道的mvn命令做了很多。

这是我要做的

  1. 通过添加一个系统属性变量来更新你的方法:

    public void LaunchApplication() {
    String appUrl = System.getProperty(applicationUrl);
    LOG.info("Launching web application URL: " + appUrl);
    driver.manage().deleteAllCookies();
    driver.get(appUrl);
    }
    
  2. 传递属性作为mvn命令,例如:mvn test -Pcucumber -Dcucumber.options="--tags @app-smoke-001" -Dbrowser=chrome -Dclose_browser=yes -DapplicationUrl="http://node-1.nginx.portal.da-1.can.qa.aws.com"

相关内容

  • 没有找到相关文章

最新更新