在硒负载测试期间,如何设置最大并发用户数?负载测试并行打开的并发用户数超过我设置的数量

时间:2019-12-03 05:31:01

标签: selenium jmeter performance-testing load-testing jsr223

在为1个或5个或10个左右的并发用户运行负载测试时,该测试可以并行运行更多的用户。即使“开始线程数”设置为某个数字,它也会在第一个线程完成之前启动新用户。 我可以通过设置适当的延迟来避免这种情况吗?如果是这样,应该如何设置延迟时间? 我还尝试通过在测试结束时在driver.quit()块中调用try catch来解决该问题,以便线程在执行后关闭,但看起来并不会关闭线程(在这种情况下为Chrome浏览器窗口)错误。

try{
WebElement myDynamicElement3 = (new WebDriverWait(driver, 10))
  .until(ExpectedConditions.presenceOfElementLocated(By.xpath("//*[text()='hello']")));
}catch(Exception e) {
    throw new AssertionError("Element not found....", e);
}
driver.quit();

请帮助我尝试哪种方法以及如何尝试。

1 个答案:

答案 0 :(得分:0)

不幸的是,如果没有看到您的Thread Group配置,实例化WebDriver的方式,线程组迭代之间的WebDriver实例的处理方式等,就无法提供答案。

同时,我只能建议考虑使用WebDriver Sampler Plugin或至少研究其source code -通过这种方式,您应该学习如何正确地实例化和关闭浏览器实例。

最后但并非最不重要的一点是,最好不要使用真实的浏览器进行负载测试,因为现代浏览器会占用大量资源,而且每个浏览器实例都需要完整的CPU内核和至少1 GB的RAM并且您可以使用HTTP Request采样器来模拟至少100个虚拟用户,而只需花费一个浏览器实例。

相关问题