2

我需要在单个浏览器中打开多个选项卡,并且需要切换所有选项卡。

给我你的建议。提前致谢。

4

2 回答 2

1

我对水豚没那么强。所以,我正在提供使用硒在标签之间切换的解决方案。

例如,您单击网页中的按钮,它将打开一个新页面。

新页面可能会在new tab in the same browser window或中打开in a new browser window。这不受硒的控制。它将由您使用的浏览器控制。

例如,以 firefox 为例,tools->ptions-> tabs-> open new windows in a new tab instead请检查该选项。例如,如果您单击一个按钮,它将仅在同一浏览器窗口的新选项卡中打开一个页面。如果您未选中,则表示它将在新的浏览器窗口中打开一个页面。同样,每个浏览器都有自己的设置。

试试这个代码:

 new Actions(driver)
.sendKeys(driver.findElement(By.tagName("html")), Keys.CONTROL)
.sendKeys(driver.findElement(By.tagName("html")), Keys.NUMPAD2)
.build().perform();

在上面的 Keys.NUMPAD2 中,您将移动到会话中的第二个选项卡。您可以通过分别给出 NUMPAD3、NUMPAD4 等...来移动到第三、第四等...。这里我使用的是 Windows 操作系统,如果您在其他操作系统中使用它们的快捷方式。

我希望这能帮到您。

于 2013-01-24T07:35:04.467 回答
0

你可以在 Ruby 中使用这个精确的函数:

page.driver.browser.switch_to.window(page.driver.browser.window_handles.last)
于 2022-02-09T23:04:36.393 回答