当前位置: 代码迷 >> 综合 >> 【2018.05.11】python3.6+selenium 弹框的处理alert\confirm\prompt
  详细解决方案

【2018.05.11】python3.6+selenium 弹框的处理alert\confirm\prompt

热度:95   发布时间:2023-12-22 22:55:55.0

提示:

不是所有的弹出框都叫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

  相关解决方案