Selenium常用API的使用java语言之13-多表单切换
生活随笔
收集整理的這篇文章主要介紹了
Selenium常用API的使用java语言之13-多表单切换
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在 Web 應(yīng)用中經(jīng)常會(huì)遇到 frame/iframe 表單嵌套頁面的應(yīng)用, WebDriver 只能在一個(gè)頁面上對(duì)元素識(shí)別與 定位, 對(duì)于 frame/iframe 表單內(nèi)嵌頁面上的元素?zé)o法直接定位。 這時(shí)就需要通過 switchTo().frame()方法將當(dāng)前定 位的主體切換為 frame/iframe 表單的內(nèi)嵌頁面中。
<html><body>...<iframe id="x-URS-iframe" ...><html><body>...<input name="email" >126郵箱登錄框的結(jié)構(gòu)大概是這樣子的,想要操作登錄框必須要先切換到iframe表單。
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver;public class MailLogin {public static void main(String[] args){WebDriver driver = new ChromeDriver();driver.get("http://www.126.com");WebElement xf = driver.findElement(By.xpath("//*[@id='loginDiv']/iframe"));driver.switchTo().frame(xf);driver.findElement(By.name("email")).clear();driver.findElement(By.name("email")).sendKeys("username");driver.findElement(By.name("password")).clear();driver.findElement(By.name("password")).sendKeys("password");driver.findElement(By.id("dologin")).click();driver.switchTo().defaultContent();//……} }如果完成了在當(dāng)前表單上的操作,則可以通過switchTo().defaultContent()方法跳出表單。
轉(zhuǎn)載于:https://www.cnblogs.com/zhizhao/p/11303323.html
總結(jié)
以上是生活随笔為你收集整理的Selenium常用API的使用java语言之13-多表单切换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安天AVL联合小米MIUI首擒顽固病毒“
- 下一篇: Java编程基础阶段笔记 day04 J