如何在Selenium Webdriver中使用Java代码加快iframe之间的切换

本文关键字:iframe 之间 代码 Java Selenium Webdriver | 更新日期: 2023-09-27 18:13:49

对于Selenium WebDriver:我使用Eclipse IDE和Java代码

正在测试的应用程序:c#内置

我的脚本需要在帧之间切换并执行一些操作。这需要经常做。问题是无论何时执行切换语句,脚本执行都会变得非常慢(大约20秒延迟)。帧层次结构如下:

1父框架:MainFrame
3个子框架:左、中、右

任何一个开关的语句集看起来像:

driver.switchTo().defaultContent();
driver.switchTo().frame("mainFrame"); //switching to parent frame. This statement causes the delay
driver.switchTo().frame("left"); //switching to left frame

请建议是否有办法避免这种延误。

如何在Selenium Webdriver中使用Java代码加快iframe之间的切换

您可以先将框架存储为元素变量,然后再切换到它。

下面是一个例子:

var frameExample = driver.FindElement(By.className("myFrame"));
driver.switchTo().frame(frameExample);

所以本质上,你将帧存储在元素变量中,并在需要时进行切换,这将有助于解决性能问题。