zoukankan      html  css  js  c++  java
  • Selenium 2自动化测试实战17(警告框处理)

    一、警告框处理

    在WebDriver中处理JavaScript所生成的alert、confirm以及prompt十分简单,只需要使用switch_to_alert()方法定位到alert/confirm/prompt,然后使用text/accept/dismiss/send_keys等方法进行操作。
    (1)text:返回alert/confirm/prompt中的文字信息
    (2)accept():接受现有警告框
    (3)dismiss():解散现有警告框
    (4)send_keys(KeysToSend):发送文本至警告框。KeysToSend:将文本发送至警告框。

    #coding:utf-8
    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    from selenium.webdriver.common.action_chains import ActionChains
    import time
    
    driver=webdriver.Chrome()
    driver.implicitly_wait(10)
    driver.get("http://www.baidu.com")
    
    #鼠标悬停至设置
    link=driver.find_element_by_link_text(u"设置")
    ActionChains(driver).move_to_element(link).perform()
    
    #打开搜索设置
    driver.find_element_by_link_text(u"搜索设置").click()
    time.sleep(2)
    
    #保存设置
    driver.find_element_by_class_name("prefpanelgo").click()
    time.sleep(5)
    
    #接受警告框
    driver.switch_to_alert().accept()
    time.sleep(2)
    
    driver.quit()
    

    从这个例子中ActionChains类所提供的move_to_element()鼠标悬停的使用。将鼠标悬停在“设置”链接上,然后在弹出的下拉菜单中单击“搜索设置”按钮,设置完成后单击“保存设置”,弹出保存确认警告框。通过switch_to_alert()方法获取当前页面上的警告框,并使用accept()方法接受警告框。 

  • 相关阅读:
    从输入URL到页面加载发生了什么
    JS常用操作方法图表
    前端面试技巧与技术栈准备梳理
    ES6学习笔记(二)—— 通过ES6 Module看import和require区别
    我所理解的event loop
    在npm上发布一个自己的包
    微信小程序--登录流程梳理
    CSS3动画和JS动画的比较
    基于Inception搭建MySQL SQL审核平台Yearing
    MySQL数据库主从切换脚本自动化
  • 原文地址:https://www.cnblogs.com/Rita-LJ/p/11577113.html
Copyright © 2011-2022 走看看