提问人:Arunima M S 提问时间:11/6/2023 最后编辑:ShawnArunima M S 更新时间:11/6/2023 访问量:48
自动化脚本在浏览器上运行速度非常慢
Automation script acting very slow on browser
问:
我是学习 Java Selenium 的新手。每当我尝试运行脚本时,浏览器都会加载很长时间,然后显示我正在测试的站点。我最近才看到这个。编写更多的脚本会使速度更慢。
这是我刚刚处理的示例代码。如果有人知道问题,请提供帮助。
System.setProperty("webriver.chrome.driver", "C:\\Users\\AM00773329\\Desktop\\TestDriver\\chromedriver-win64\\chromedriver.exe");
ChromeOptions ChromeT = new ChromeOptions();
ChromeT.setBinary("C:\\Users\\AM00773329\\Desktop\\TestDriver\\chrome-win64\\chrome.exe");
driver.get("http://qaclickacademy.com/practice.php");
WebElement footer = driver.findElement(By.id("gf-BIG"));
WebElement footerSub = footer.findElement(By.xpath("//div/table/tbody/tr/td[1]/ul"));
System.out.println(footerSub.findElements(By.tagName("a")).size());
答:
Selenium浏览器加载缓慢的原因有多种:
您的计算机或网络可能很慢。Selenium 是一个资源密集型应用程序,因此它需要快速的计算机和网络连接才能顺利运行。 您的 Selenium 脚本可能效率低下。如果脚本过于复杂或使用低效定位器,则运行时间会更长。 您正在测试的网站可能很慢。如果网站复杂或流量大,加载时间会更长。 以下是一些加速 Selenium 脚本的技巧:
使用高效的定位器。CSS 选择器通常比 XPath 选择器快。 避免与浏览器进行不必要的交互。例如,如果您只需要阅读元素的文本,请不要先单击它。 使用隐式等待而不是显式等待。隐式等待效率更高,尤其是对于与页面上的多个元素交互的脚本。 使用无头浏览器。无头浏览器在没有 GUI 的情况下运行,这可以提高性能。 使用硒网格。Selenium Grid 允许您将测试分布在多台机器上,这可以显着提高性能。 以下是您可以在示例代码中签入的一些具体内容:
确保您使用的是最新版本的 ChromeDriver。旧版本的 ChromeDriver 可能会更慢。 尝试在 Chrome 浏览器中停用扩展程序。某些扩展程序可能会降低浏览器的速度。 尝试使用无头浏览器。为此,您可以在 ChromeOptions 对象中将 headless 选项设置为 true。 尝试使用 Selenium Grid。这设置起来比较复杂,但可以显著提高性能
评论