如何使用Java在Selenium WebDriver中的帧之间切换

2022-09-01 04:12:52

我正在使用Java与WebDriver.我必须在两个帧之间切换。我已经在硒IDE中记录了测试用例,并且我得到了选择帧相对=顶部选择帧=中间帧的值

但是有一个问题,它无法识别相对=顶部和中间帧。我如何使用Java在Selenium WebDriver中解决这个问题?


答案 1

WebDriver 的 driver.switchTo().frame() 方法采用以下三个可能的参数之一:

  • 一个数字。

    按帧的(从零开始的)索引选择帧。也就是说,如果一个页面有三个框架,则第一个框架将位于索引处,第二个帧位于索引处,第三个帧位于索引处。选择该帧后,WebDriver 接口上的所有后续调用都将对该帧进行。012

  • 名称或 ID。

    按名称或 ID 选择帧。按匹配名称属性定位的帧始终优先于按 ID 匹配的帧。

  • 以前找到的 WebElement

    使用先前定位的 WebElement 选择一个帧。

通过它的id/名称获取框架,或者通过driver.findElement()找到它,你会很好。


答案 2

切换到帧:

driver.switchTo.frame("Frame_ID");

以再次切换到默认值。

driver.switchTo().defaultContent();

推荐