java selenium 操作彈出窗口示例代碼
selenium 中如何處理彈出窗口
閱讀目錄
- 原理
- 測(cè)試頁(yè)面的HTML
- Java 代碼
原理
在代碼里, 通過(guò) Set<String> allWindowsId = driver.getWindowHandles();
來(lái)獲取到所有彈出瀏覽器的句柄, 然后遍歷, 使用swithcto.window(newwindow_handle)方法。 就可以定位到新的窗口
測(cè)試頁(yè)面的HTML
<html> <head> <title>常見(jiàn)web ui元素操作, 及API使用</title> <script type="text/javascript"> function open_win() { window.open("http://www.cnblogs.com") } </script> </head> <body> <form> <input type=button value="打開(kāi)窗口" onclick="open_win()"> </form> </div> </body> </html>
Java 代碼
public static void testMultipleWindowsTitle(WebDriver driver) throws Exception { String url="E:\\StashFolder\\huoli_28@hotmail.com\\Stash\\Tank-MoneyProject\\Selenium Webdriver\\AllUIElement.html"; driver.get(url); // 獲取當(dāng)前窗口的句柄 String parentWindowId = driver.getWindowHandle(); System.out.println("driver.getTitle(): " + driver.getTitle()); WebElement button = driver.findElement(By.xpath("http://input[@value='打開(kāi)窗口']")); button.click(); Set<String> allWindowsId = driver.getWindowHandles(); // 獲取所有的打開(kāi)窗口的句柄 for (String windowId : allWindowsId) { if (driver.switchTo().window(windowId).getTitle().contains("博客園")) { driver.switchTo().window(windowId); break; } } System.out.println("driver.getTitle(): " + driver.getTitle()); // 再次切換回原來(lái)的父窗口 driver.switchTo().window(parentWindowId); System.out.println("parentWindowId: " + driver.getTitle()); }
以上就是關(guān)于Java selenium 操作彈窗窗口的示例,后續(xù)繼續(xù)整理相關(guān)資料,謝謝大家對(duì)本站的支持!
- Java selenium截圖操作的實(shí)現(xiàn)
- selenium+java+chrome環(huán)境搭建的方法步驟
- java+selenium實(shí)現(xiàn)自動(dòng)化打開(kāi)頁(yè)面的方法
- selenium+java破解極驗(yàn)滑動(dòng)驗(yàn)證碼的示例代碼
- Java selenium處理極驗(yàn)滑動(dòng)驗(yàn)證碼示例
- java selenium智能等待頁(yè)面加載完成示例代碼
- java selenium操作彈出對(duì)話框示例講解
- java selenium 操作瀏覽器實(shí)例
- selenium+java中用js來(lái)完成日期的修改
相關(guān)文章
IntelliJ IDEA 2020.2 配置大全詳細(xì)圖文教程(更新中)
這篇文章主要介紹了IntelliJ IDEA 2020.2 配置大全(更新中),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08Java Swing JList列表框的實(shí)現(xiàn)
這篇文章主要介紹了Java Swing JList列表框的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12idea hibernate jpa 生成實(shí)體類(lèi)的實(shí)現(xiàn)
這篇文章主要介紹了idea hibernate jpa 生成實(shí)體類(lèi)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11基于Java編寫(xiě)第一個(gè)區(qū)塊鏈項(xiàng)目
區(qū)塊鏈?zhǔn)欠植际綌?shù)據(jù)存儲(chǔ)、點(diǎn)對(duì)點(diǎn)傳輸、共識(shí)機(jī)制、加密算法等計(jì)算機(jī)技術(shù)的新型應(yīng)用模式,下面這篇文章主要給大家介紹了基于Java實(shí)現(xiàn)區(qū)塊鏈的相關(guān)資料,需要的朋友可以參考下2021-08-08SpringBoot整合Thymeleaf與FreeMarker視圖層技術(shù)
在目前的企業(yè)級(jí)應(yīng)用開(kāi)發(fā)中,前后端分離是趨勢(shì),但是視圖層技術(shù)還占有一席之地。Spring Boot 對(duì)視圖層技術(shù)提供了很好的支持,福安防推薦使用的模板引擎是Thymeleaf,不過(guò)想FreeMarker也支持,JSP技術(shù)在這里并不推薦使用2022-08-08使用自定義注解+springAop實(shí)現(xiàn)參數(shù)非空校驗(yàn)方式
這篇文章主要介紹了使用自定義注解+springAop實(shí)現(xiàn)參數(shù)非空校驗(yàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09Swagger實(shí)現(xiàn)動(dòng)態(tài)條件注入與全局?jǐn)r截功能詳細(xì)流程
這篇文章主要介紹了Swagger實(shí)現(xiàn)動(dòng)態(tài)條件注入與全局?jǐn)r截功能詳細(xì)流程,Swagger 可以提供 API 操作的測(cè)試文檔,本文記錄 Swagger 使用過(guò)程中遇到的小問(wèn)題2023-01-01maven打包上傳到私有倉(cāng)庫(kù)的實(shí)現(xiàn)步驟
這篇文章主要介紹了maven打包上傳到私有倉(cāng)庫(kù)的實(shí)現(xiàn)步驟,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01