selenium的alert/confirm/prompt处理

2人阅读 评论(0) 收藏 举报
分类:

prompt/alert/confirm不能直接通过定位工具进行获取,selenium处理js原生的提示信息prompt/alert/confirm使用switch_to_alert方法切换对象,和frame类似

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

text:获取文本值

accept() :点击"确认"

dismiss() :点击"取消"或者叉掉对话框

send_keys() :输入文本值 --仅限于 prompt,在 alert 和 confirm 上没有输入框

html 源码:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>dialogs:alert,confirm,prompt</title>
</head>
<body>
 <input id = "alert" value = "alert" type = "button" onclick = "alert('请按确认继续!');"/>  
 <input id = "confirm" value = "confirm" type = "button" onclick = "confirm('是否确定?');"/>  
 <input id = "prompt" value = "prompt" type = "button" onclick = "var name = prompt('请输入地址:',''); document.write(name) "/>  
</body>

</html>

测试代码:

#coding=utf-8
from selenium import webdriver
driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.get("file:///D:/1.html")
driver.find_element_by_id("alert").click()
Alert= driver.switch_to_alert()
print("alert text: "+Alert.text)
Alert.dismiss()
driver.implicitly_wait(5)

driver.find_element_by_id("confirm").click()
confirm= driver.switch_to_alert()
print("confirm text: "+confirm.text)
Alert.accept()
driver.implicitly_wait(5)

driver.find_element_by_id("prompt").click()
prompt= driver.switch_to_alert()
print("prompt text: "+prompt.text)
prompt.send_keys("世界末日!")
Alert.dismiss()
driver.implicitly_wait(5)


查看评论

selenium(webdriver)学习笔记6--Alert/Confirm/Prompt的处理(Java版)

WebDriver中处理原生JS的 alert confirm 以及prompt是很方便的(虽然现在原生JS的实现方式用的很少了)。 具体思路是使用driver.switchTo.alert()方法...
  • qiyueqinglian
  • qiyueqinglian
  • 2015-08-24 19:23:39
  • 2407

Python-Selenium2做Web自动化测试(10)-浏览器多窗口处理、alert/confirm/prompt 处理

一、浏览器多窗口处理 有时候我们在测试一个 web 应用时会出现多个浏览器窗口的情况,要想在多个窗口之间切换,首先要获得每一个窗口的唯一标识符号(句柄) 。通过获得的句柄来区别分不同的窗口,...
  • jasonwoolf
  • jasonwoolf
  • 2015-08-09 18:42:20
  • 2759

selenium webdriver学习(七)------------如何处理alert、confirm、prompt对话框

alert、confirm、prompt这样的js对话框在selenium1.X时代也是难啃的骨头,常常要用autoit来帮助处理。 试用了一下selenium webdriver中处理这些对话...
  • gzh0222
  • gzh0222
  • 2012-05-15 14:32:27
  • 14065

Selenium webdriver处理alert、confirm弹出框

纯学习记录:a=driver.switch_to_alert() a.accept() # 相当于点击确定,或者使用driver.execute("acceptAlert") a.dismiss(...
  • hippoposs
  • hippoposs
  • 2016-01-25 10:40:38
  • 1721

alert(),confirm(),prompt()的区别和用法

1、alert()–警告消息框 alert 方法有一个参数,即希望对用户显示的文本字符串。该字符串不是 HTML 格式。该消息框提供了一个“确定”按钮让用户关闭该消息框,并且该消息框是模式对话框, ...
  • qq_38173593
  • qq_38173593
  • 2017-05-26 15:07:34
  • 174

WebBrowser控件中禁止alert,confirm等对话框的方法

先引用COM组建mshtml;然后处理WebBrowser控件的Navigated事件,代码如下: CodeCode highlighting produced by Actipro CodeHigh...
  • chenhaoxiao
  • chenhaoxiao
  • 2009-08-08 02:31:00
  • 1103

js自带弹窗总结(alert,confirm,prompt)

JS自带弹窗可分三类:警告框,确认框,提示框 1、警告框(alert / window.alert) alert("文本"); 警告框经常用于确保用户可以得到某些信息。 当警告框出现后,用户需要点...
  • u014316363
  • u014316363
  • 2015-01-26 11:01:04
  • 5590

selenium webdriver学习(一)---如何处理alert、confirm、prompt对话框

alert、confirm、prompt这样的js对话框在selenium1.X时代也是难啃的骨头,常常要用autoit来帮助处理。 试用了一下selenium webdriver中处理这些对话...
  • u012959829
  • u012959829
  • 2015-05-06 13:16:05
  • 1345

JS alert(),confirm()和prompt()的用法和区别

1.警告消息框alert alert 方法有一个参数,即希望对用户显示的文本字符串。该字符串不是 HTML 格式。该消息框提供了一个“确定”按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说...
  • u011467537
  • u011467537
  • 2016-11-21 17:26:00
  • 1360

javascript中三大弹出框alert(),confirm(), prompt() 的应用和区别

alert(),confirm(), prompt()的使用和区别 1.警告消息框alert 通过alert 方法有,可以将希望的文本字符串以弹出框的形式展示给用户。该消息框提供了一个“确定”按钮...
  • wang1006008051
  • wang1006008051
  • 2017-08-18 14:34:29
  • 311
    个人资料
    持之以恒
    等级:
    访问量: 637
    积分: 257
    排名: 30万+
    文章存档