Python UI自動化測試Web frame及多窗口切換
一、什么是frame&frame切換?
frame:HTML頁面中的一種框架,主要作用是在當(dāng)前頁面中指定區(qū)域顯示另一頁面元素;
frame切換:通俗的講當(dāng)你進(jìn)入房子里面,而里面又有一個小房間的話,你不知道小房間在哪,那就是進(jìn)不去,而frame切換就是進(jìn)入這個小房間的方式!
這也是為什么要用frame切換的原因!
二、frame切換的方法
解釋:在Selenium中封裝了如何切換frame框架的方法 方法:
1). driver.switch_to.frame(frame_reference) #切換到指定frame的方法frame_reference:可以為frame框架的name、id或者定位到的frame元素 2). driver.switch_to.default_content() #恢復(fù)默認(rèn)頁面方法
這里要注意:在frame中操作其他頁面,必須先回到默認(rèn)頁面,才能進(jìn)一步操作
三、什么是多窗口&多窗口切換
解釋:在HTML頁面中,當(dāng)點擊超鏈接或者按鈕時,有的會在新的窗口打開頁面,這個窗口就被稱為多窗口。
這個可以向上面那個一樣理解,但是這是一棟房子進(jìn)入另外一棟房子的區(qū)別!
四、如何實現(xiàn)多窗口切換?
解釋:在Selenium中封裝了獲取當(dāng)前窗口句柄、獲取所有窗口句柄和切換到指定句柄窗口的方法;
句柄:英文handle,窗口的唯一識別碼
1). driver.current_window_handle #獲取當(dāng)前窗口句柄 2). driver.window_handles # 獲取所有窗口句柄 3). driver.switch_to.window(handle) #切換指定句柄窗口
窗口代碼實現(xiàn)片段:
# 獲取當(dāng)前窗口句柄信息 print(driver.current_window_handle) # 獲取所有窗口句柄 windows = driver.window_handles # 切換窗口句柄 driver.switch_to.window(windows[-1])
拓展:frame形式介紹
形式一:
<frameset cols="25%,75%"> <frame src="frame_a.htm"> <frame src="frame_b.htm"> </frameset>
形式二:
<iframe name="iframe_a" src="demo_iframe.htm" width="200" height="200"></iframe>
以上就是Python UI自動化測試Web frame及多窗口切換的詳細(xì)內(nèi)容,更多關(guān)于Python UI多窗口切換的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
numpy展平數(shù)組ndarray.flatten()詳解
這篇文章主要介紹了numpy展平數(shù)組ndarray.flatten()詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06Python中基礎(chǔ)的socket編程實戰(zhàn)攻略
Python擁有內(nèi)置的socket模塊,可以用簡潔明了的代碼來進(jìn)行socket通信操作,這里我們就為大家整理了一份Python中基礎(chǔ)的socket編程實戰(zhàn)攻略,需要的朋友可以參考下.2016-06-06pytorch中Tensor.to(device)和model.to(device)的區(qū)別及說明
這篇文章主要介紹了pytorch中Tensor.to(device)和model.to(device)的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07linux環(huán)境下安裝pyramid和新建項目的步驟
這篇文章簡單介紹了linux環(huán)境下安裝pyramid和新建項目的步驟,大家參考使用2013-11-11Python面向?qū)ο缶幊讨械念惡蛯ο髮W(xué)習(xí)教程
這篇文章主要介紹了Python面向?qū)ο缶幊讨械念惡蛯ο髮W(xué)習(xí)教程,面向?qū)ο笫荘ython的基礎(chǔ)特性,其中的類與對象的特性和使用方法是Python學(xué)習(xí)當(dāng)中的基本功,需要的朋友可以參考下2015-03-03python報錯TypeError: Input z must be
大家好,本篇文章主要講的是python報錯TypeError: Input z must be 2D, not 3D的解決方法,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下2021-12-12python利用urllib和urllib2訪問http的GET/POST詳解
urllib模塊提供的上層接口,使我們可以像讀取本地文件一樣讀取www和ftp上的數(shù)據(jù)。下面這篇文章主要給大家介紹了關(guān)于python如何利用urllib和urllib2訪問http的GET/POST的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。2017-09-09