1. 程式人生 > >【2018.05.11】python3.6+selenium 彈框的處理alert\confirm\prompt

【2018.05.11】python3.6+selenium 彈框的處理alert\confirm\prompt

提示:

不是所有的彈出框都叫alert,在使用alert方法前,先要識別出到底是不是alert。先認清楚alert長什麼樣子,下次碰到了,就可以用對應方法解決。

alert\confirm\prompt彈出框操作主要方法有:

text:獲取文字值

accept() :點選"確認"

dismiss() :點選"取消"或者叉掉對話方塊

send_keys() :輸入文字值 --僅限於prompt,在alert和confirm上沒有輸入框

//這是作為測試網頁的彈窗的html原始碼,可以拷到.txt更改為.html,用瀏覽器開啟看看顯示
<html>  

<head>  

   <title>Alert</title>  

    </head>  

<body>  

<input id = "alert" value = "alert" type = "button" onclick = "alert('這是一個alert彈框!');"/>  

<input id = "confirm" value = "confirm" type = "button" onclick = "confirm('這是一個confirm彈框!');"/>  

<input id = "prompt" value = "prompt" type = "button" onclick = "var name = prompt('請輸入這是一個prompt彈窗'); document.write(name) "/>    

</body>   

</html> 
#coding = utf-8
'''
alert\confirm\prompt
彈框的處理

'''
from selenium import webdriver
import time
driver = webdriver.Chrome()
#url的地址可以拷貝在瀏覽器中開啟的地址
url ='file://C:/Users/Administrator/Desktop/tanchuang.html' 
driver.get(url)
time.sleep(3)

'''alert'''
driver.find_element_by_id('alert').click()
time.sleep(3
) r = driver.switch_to_alert() #列印警告資訊 print(r.text) #點選確認按鈕 r.accept() #r.didmiss() 相當於點X按鈕,取消 time.sleep(5) '''confirm''' driver.find_element_by_id('confirm').click() time.sleep(3) s = driver.switch_to_alert() #列印警告資訊 print(s.text) #點選確認按鈕 s.accept() #s.didmiss() 相當於點X按鈕,取消 time.sleep(3) '''prompt'''
driver.find_element_by_id('prompt').click() time.sleep(3) t = driver.switch_to_alert() #列印警告資訊 print(t.text) #輸入文字 t.send_keys('prompt is a good girl,but she ...') #點選確認按鈕 t.accept() #t.didmiss() 相當於點X按鈕,取消 time.sleep(3)


以上...歡迎交流,一起學習,麻花藤測試開發群728109091