我不确定这是否是最新的 test-ng 版本的问题,或者它之前也存在(从未并行运行测试),但是。我将我的 testng.xml 文件配置为并行运行测试,它有点不起作用。根据指定的线程数,它会启动并行 webdriver 实例,但驱动程序会尝试在 webdriver 的最新实例上执行所有内容。
这就是我开始的testng.xml
样子——
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="Parallel Tests" configfailurepolicy="continue" parallel="tests" thread-count="5">
所以现在登录测试类(有 5 个登录测试),这会启动 5 个浏览器窗口,转到登录 URL,并在最新的浏览器窗口会话中输入凭据 5 次!
我正在初始化我的TestBase.class
. 并且所有其他类都继承了这一点。这是我正在初始化 webdriver 的一段代码-
public void initialize() {
browserName = prop.getProperty("browser", "chrome");
browserMode = prop.getProperty("browser_mode", "start-maximized");
System.out.println("Launching the browser...");
if(browserName.equalsIgnoreCase("chrome")) {
WebDriverManager.chromedriver().setup();
ChromeOptions options = new ChromeOptions();
options.addArguments("--"+browserMode);
driver = new ChromeDriver(options);
}
}
我肯定做错了什么,不知道是什么!?还有其他人面临/面临这个吗?