selenium定位frameSet中得frame

来源:互联网 发布:怎么提高记忆知乎 编辑:程序博客网 时间:2024/06/05 06:45

    由于要定位frameSet中得frame,之前做过忘记了,找了半天没找见,最后在stackoverflow上找到类似的,修改了一下如下:

可以通过ID和Name定位到frame获取driver,直接拿去就能用

public static WebDriver switchToFrameByIdOrName(WebDriver driver , String frameIdOrName) {    if (!(driver instanceof ChromeDriver)) {        return driver.switchTo().frame(frameIdOrName);    }    WebElement frame = null;    try {        frame = driver.findElement(By.cssSelector("frame[id='" + frameIdOrName + "']"));    } catch (NoSuchElementException e) {  }    if (frame == null) {        try {            frame = driver.findElement(By.cssSelector("frame[name='" + frameIdOrName + "']"));        } catch (NoSuchElementException e) {            System.out.println(String.format("CORE > switchToFrameByIdOrName() error: Frame with name or id '%s' not found.", frameIdOrName));        }    }    return driver.switchTo().frame(frame);}


0 0
原创粉丝点击