引用新选项卡并使用 Selenium 保存文件 IDE
Reffering to new tab and saving file with Selenium IDE
我正在使用 Selenium IDE 来 post 表单。
在 posting 之后,该站点打开一个新选项卡 (target="_blank"),其中包含一个 .XML 文件,我想将其保存在本地。
如何引用此选项卡并命令 Selenium 将其保存在特定的本地文件夹中?
附加信息:
- 点击提交按钮后,Selenium 日志指出:“[警告] 打开 window '_blank',这不是真正的 window 名称。随机化目标是:selenium_blank17837”(您可能已经猜到了,每次我 运行 代码时数字都不一样)。
- XML 选项卡没有标题,但我可以使用 URL 的部分内容将其与我之前的选项卡区分开来(我不知道这是否有帮助)。
这是我找到的解决方案:
Set<String> winSet;
winSet = driver.getWindowHandles();
while (winSet.size() < 2) {
Thread.sleep(250);
winSet = driver.getWindowHandles();
}
String windowHandle = driver.getWindowHandle();
driver.switchTo().window(winSet.toArray()[1].toString());
while (driver.getCurrentUrl().equals("about:blank")){
Thread.sleep(250);
};
URL Address = new URL(driver.getCurrentUrl());
File fName = new File("filename.xml");
FileUtils.copyURLToFile(Address, fName);
driver.close();
driver.switchTo().window(windowHandle);
我正在使用 Selenium IDE 来 post 表单。 在 posting 之后,该站点打开一个新选项卡 (target="_blank"),其中包含一个 .XML 文件,我想将其保存在本地。
如何引用此选项卡并命令 Selenium 将其保存在特定的本地文件夹中?
附加信息:
- 点击提交按钮后,Selenium 日志指出:“[警告] 打开 window '_blank',这不是真正的 window 名称。随机化目标是:selenium_blank17837”(您可能已经猜到了,每次我 运行 代码时数字都不一样)。
- XML 选项卡没有标题,但我可以使用 URL 的部分内容将其与我之前的选项卡区分开来(我不知道这是否有帮助)。
这是我找到的解决方案:
Set<String> winSet;
winSet = driver.getWindowHandles();
while (winSet.size() < 2) {
Thread.sleep(250);
winSet = driver.getWindowHandles();
}
String windowHandle = driver.getWindowHandle();
driver.switchTo().window(winSet.toArray()[1].toString());
while (driver.getCurrentUrl().equals("about:blank")){
Thread.sleep(250);
};
URL Address = new URL(driver.getCurrentUrl());
File fName = new File("filename.xml");
FileUtils.copyURLToFile(Address, fName);
driver.close();
driver.switchTo().window(windowHandle);