• 滑动解锁和截图


    当我们单击滑块时,改变的只是CSS样式,HTML代码段如下。

    <div class="slide-to-unlock-progress" style=" height: 36px; 0px; "></div>

    <div class-"slide-to-unlock-handle" style=" height: 38px; line-height: 38px; 37px; left:Opx;"></div>

    slide-to-unlock-handle表示滑块。在滑动过程中,滑块的左边距会逐渐变大,因为它在向右移动。

    slide-to-unlock-progress表示滑过之后的背景色,背景色的区域会逐渐增加,因为滑块在向右移动。
    from time import sleep
    from selenium import webdriver
    from selenium.webdriver import ActionChains
    from selenium.common.exceptions imnort InevnectedAlertPresentException
    driver = webdriver.Chrome()
    driver.get("https://www .helloweba.com/demo/2017/unlock/")
    #定位滑动块
    slider = driver.find_elements_by_class name ("slide-to-unlock-handle")[0]action = ActionChains(driver)

    action.click_and_hold(slider) .perform()
    for index in range(200):
      try:
      action.move_by_offset (2,0) .perform()except UnexpectedAlertPresentException:
      break
      action.reset_actions()

      sleep(0.1)#等待停顿时间
    #打印警告框提示
    success text =driver.switch_to.alert.textprint (success_text)

    在这个脚本中,用到下面几个方法。
    click_and_ hold():单击并按下鼠标左键,在鼠标事件中介绍过。
    move by offset():移动鼠标,第一个参数为r必标跖哀,第一个参数为v坐标距离。
    reset actionO):重置action。执行完成,滑动效果如图4-12所示。


    参考前面的操作,通过ActionChains类可以实现上下滑动选择日另外一种方法,即通过TouchActions类实现上下滑动选择日期。
    from time import sleep
    from selenium import webdriver
    driver - webdriver.Chrome(
    iriver.get ("http://www-jq22.com/yanshi4976")leep (2)
    river.switch_to.frame("iframe")

     

    driver.find_element by_ id("appDate").click()
    定位要滑动的年、月、日
    dwnwos= driver.find_ elements by_class_name ("dwwo")year = dwwos[0]
    month = dwwos[1]day = dwwos[2]
    action - webdriver.TouchActions(driver)
    action.scroll_from_element(year,0,5) .perform()

    action.seroll_from_element(month, 0,30).perform()

    action.scroll_from element (day,0,30).perform()

    #……
    这里使用 TouchActions类中的scroll from element()方法滑动元素,参数如下。
    on_element:滑动的元素。
    xoffset: x坐标距离。
    yoffset:y坐标距离。

    ====窗口截图===

    自动化测试用例是由程序劫行的因出右时位打印的进涅信息不够直观。如果在脚本执行出错时能够对当前窗口进行#见*但方 那过叹并可I以非常直观地看到脚本出错的原因。WebDriver提做了截图亟数cave sorooenchat可田来截取当前窗口。
    from selenium import webdriver
    driver = webdriver.Chrome()
    driver.get('http://www .baidu.com')
    手截取当前窗口,指定截图图片的保存位置
    driver.save_screenshot("./files/baidu_img.png")

    WebDriver 建议使用 png作为图片的后缀名。脚本运行完成后,会在当前files/目录中生成baidu_img.png图片。

  • 相关阅读:
    kindeditor-4.1.10在线编辑器的使用[多个]
    从人被造的目的看灵魂的价值2014-07-07 唐崇荣 祷告吧
    C#&JQuery非缓存式无刷新临时存储数据之仿购物车功能
    仿主题广告轮播js
    C#&JQ仿网上商城商品条件筛选功能
    百度地图API调用实例之地址标注与位置显示
    Google Maps API 调用实例
    Jquery CheckBox复选框 全选/取消全选 最佳实现方式 参考案例
    基督徒的长篇情书-人生第二次表白之傻人自有傻人福^_^后知此事违神旨意_不要激动爱情,等它自发
    C# Ajax 手机发送短信验证码 校验验证码 菜鸟级别实现方法
  • 原文地址:https://www.cnblogs.com/cpas-3-org/p/13906456.html
Copyright © 2020-2023  润新知