自動化測試彈框處理


自動化測試彈框處理

標簽(空格分隔): 彈框


切換窗口:

1.在一個網頁窗口里面的操作的時候,點點的有時候他會出現一個新的窗口自動化,而不是原來的窗口;

問題:那么在新的窗口里面在繼續執行自動化的話,我們要注意什么呢?那么他會不會自動化到新的窗口呢?

答案:肯定是不行的,那我們怎么辦呢?
例如如下圖:最終的輸出還是:newwindwos
image.png-223kB

webdriver 屬性有個屬性是:windwos_handles,是保存所有自動化程序打開的瀏覽器的handles,所以我們要切換到某個窗口,我們可以利用循環,切換handles,切換窗口完了,可以更具對應的窗口的標題欄,來判斷,是不是我們打開的網頁;

切換到新窗口里面進行操作:

  • 循環遍歷:driver.windows_handles
  • driver.switch_to.window(handle)方法切入新窗口
#保存主窗口的Handle
mainWindow = driver.current_window_handle
print(driver.window_handles)
for handle in driver.window_handles:
#切換到新的窗口
    driver.swithch_to.window(handle)
    if '百度' in driver.title:
    break
kw = driver.find_element_by_id('kw')
kw.send_keys(u'python自動化')
#切換到主窗口
driver.switch_to_window(mainWindow)
driver.find_element_by_tag_name('input').send_keys('helloworld')
input('pass any key to quit......')
driver.quit()
  • 檢查該窗口特點,是否為要切入的那個;

切換到最初的窗口:

  • 保存窗口的handle

關閉窗口:

  • close方法

對話框操作:

  • 對話彈框一般有3種:
    1.alert(只有一種選擇)
    如下圖的alert
    image.png-14.9kB
    2.confirm(有兩種選擇)
    如下圖
    image.png-14.1kB
    3.prompt(有兩種選擇,還要一些輸入內容的)
    如下圖
    image.png-25kB
  • 操作方法:
driver.switch_to.alert.accept()  #點擊OK
driver.switch_to.alert.text # 得到對話框內容
driver.switch_to.alert.dismiss()#點擊關閉
driver.switch_to.alert.send_keys()# 輸入內容這種就用於上述的圖3 的情況

目前我們講的alert,就是上述的3種,這個alert是瀏覽器原生的(F12查不了),不是HTML的alert,有的時候,看到的alert按鈕比較多,或者比較豐富的頁面,這些都是HTML自己的alert
1.如下圖的alert,就是HTML元素:(可以按F12可以查看)
image.png-51.4kB


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM