1

这是我需要自动化的场景:

  1. 我需要用不同的用户说“gmail”登录网站。
  2. 执行不同的操作,比如“撰写”、“更改设置”等。
  3. 然后注销。

我需要并行执行上述所有步骤。

  • class1 - 打开多个 Chrome 驱动程序。
  • class2 - 执行诸如导航、输入文本、点击等操作的方法。
  • class3 - 包含测试用例。

下面是我的代码:

public class1 {
    public static RemoteWebDriver[] driver = new RemoteWebDriver[3];
    public void openBrowser(){
        System.setProperty("webdriver.chrome.driver", chromeDriverPath);
        for(i = 0;i<2;i++){
            driver[i] = new ChromeDriver();
            driver[i].manage().window().maximize();
        }
    }
}

public class2 extends class1 {
    public void click() {...}
    public void setText() {...}
}

public class2 {
    @Test
    public void test1() {...}
    public void test2() {...}
}

使用上面的代码,我可以打开具有不同会话 ID 的多个浏览器实例。

然后,在同一浏览器中进行多次操作,即导航到gmail.com3 次,然后输入用户名 3 次(user1user1user1)。

它没有在 3 个不同的浏览器实例中运行。

请帮助我实现这一目标。

4

2 回答 2

0

您正在使用 TestNG,因此您可以parallel在 XML 中使用属性创建它。网上有很多关于这个的教程。可能会让您感兴趣。

这个google group thread 对此也有很好的讨论。

详细的博客文章在这里

于 2017-05-31T14:46:12.650 回答
0

请参阅链接以了解如何同时为不同的浏览器节点传递不同的凭据,并参考我在链接上的回答以了解如何在不同的浏览器节点上同时测试多个测试脚本。如果有任何问题,请告诉我。

于 2017-06-01T04:43:49.260 回答