zoukankan      html  css  js  c++  java
  • Selenium + Python 实现 UI 自动化测试-操作日期时间控件(转)

    其实做自动化会遇到很多坑,有的坑需要我们填掉,有的坑需要我们绕过去。而日期时间控件就是需要我们绕过去的控件,千万别想着如何点击形形色色的日期控件。

    一、先来看看日期时间控件的前端形式

    对,没错,日期时间控件,就是一个input框,是不是可以像普通文本框一样直接输入日期呢?我们来试试。

    二、实验

    1、最简单的例子,直接send_keys。(日期选择器的日期字段允许输入)

    测试地址:http://jqueryui.com/resources/demos/datepicker/other-months.html

     

    1 from selenium import webdriver
    2 import time
    3 
    4 driver = webdriver.Chrome()
    5 driver.get("http://jqueryui.com/resources/demos/datepicker/other-months.html")
    6 driver.find_element_by_id('datepicker').send_keys("10/16/2017")
    7 time.sleep(5)
    8 driver.quit()

    2、有readonly 属性的。(日期选择器的日期字段不允许输入)

    回头看下一中的图片,有个readonly=‘true’属性,这样的日期框,不允许直接输入

     1 from selenium import webdriver
     2 import time
     3 
     4 driver = webdriver.Chrome()
     5 driver.implicitly_wait(20)
     6 driver.get("http://xxxx/pages/systemManagement/login.html")
     7 driver.find_element_by_xpath("/html/body/div/input").send_keys('xx')
     8 driver.find_element_by_xpath('/html/body/div1/input').send_keys('xxx')
     9 driver.find_element_by_xpath('/html/body/div/div[7]').click()
    10 driver.find_element_by_xpath('/html/body/li[1]/a').click()
    11 # js = "document.getElementById('c-date1').removeAttribute('readonly')" # 1.原生js,移除属性
    12 # js = "$('input[id=c-date1]').removeAttr('readonly')" # 2.jQuery,移除属性
    13 # js = "$('input[id=c-date1]').attr('readonly',false)" # 3.jQuery,设置为false
    14 js = "$('input[id=c-date1]').attr('readonly','')" # 4.jQuery,设置为空(同3)
    15 driver.execute_script(js)
    16 
    17 driver.find_element_by_id('c-date1').send_keys('10/16/2017')
    18 time.sleep(15)
    19 driver.quit()



  • 相关阅读:
    imperva_waf导入ssl证书
    博科光纤交换机初始化配置
    xss测试代码
    生成树注意事项
    [转载]Basics of the Unix Philosophy
    [转载]GSview注册码
    [转载]tar命令详解
    [转载]WinEdt 6 注册 试用期30天永不过期
    [转载+修改]计数排序
    [转载]C++ 关于声明,定义,类的定义,头文件作用,防止头文件在同一个编译单元重复引用,不具名空间
  • 原文地址:https://www.cnblogs.com/nlyangtong/p/11888070.html
Copyright © 2011-2022 走看看