如下案例使用https://jqueryui.com/網站爲例。java
1、如何肯定元素是否包含在iFarme中?jquery
一、按F12打開發者選項,定位到指定的元素。chrome
二、向上查找元素是否被包含在ifarme標籤中。api
2、案例演示學習
1 package switchto; 2 3 import java.util.concurrent.TimeUnit; 4 5 import org.junit.jupiter.api.AfterEach; 6 import org.junit.jupiter.api.BeforeEach; 7 import org.junit.jupiter.api.Test; 8 import org.openqa.selenium.By; 9 import org.openqa.selenium.WebDriver; 10 import org.openqa.selenium.WebElement; 11 import org.openqa.selenium.chrome.ChromeDriver; 12 13 class SwitchFrame { 14 15 WebDriver driver; 16 String url; 17 18 @BeforeEach 19 void setUp() throws Exception { 20 driver = new ChromeDriver(); 21 url = "https://jqueryui.com/datepicker/"; 22 driver.manage().window().maximize(); 23 driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS); 24 driver.get(url); 25 } 26 27 @Test 28 void test() { 29 // 切換到ifarme窗口 30 driver.switchTo().frame(0); 31 // 點擊ifarme窗口中的日期選擇框 32 WebElement datepicker = driver.findElement(By.id("datepicker")); 33 datepicker.click(); 34 35 // 切回到原來的窗口 36 driver.switchTo().defaultContent(); 37 // 在主窗口搜索輸入框中輸入 38 driver.findElement(By.name("s")).sendKeys("jquery"); 39 } 40 41 @AfterEach 42 void tearDown() throws Exception { 43 Thread.sleep(2000); 44 driver.quit(); 45 } 46 47 48 }
注:有三種方式能夠切換到ifarme窗口網站
一、經過編號切換到ifarme窗口(編號從0開始):driver.switchTo().frame(0);ui
二、經過ID、name屬性切換到ifarme窗口:driver.switchTo().frame("ifarme");url
三、經過元素定位切換到ifarme窗口:WebElement e = driver.findElement(By.className("demo-frame"));spa
driver.switchTo().frame(e);code
若是有不明白的小夥伴能夠加羣「555191854」問我,羣裏都是軟件行業的小夥伴相互一塊兒學習。
內容具備連慣性,未標註的地方能夠看前面的博客,這是一整套關於ava+selenium自動化的內容,從java基礎開始。
歡迎關注,轉載請註明來源。