zoukankan      html  css  js  c++  java
  • selenium操作页面元素总结

    1.操作悬浮菜单和二级链接

    from selenium.webdriver.common.action_chains import ActionChains
    from selenium import webdriver
    
    driver = webdriver.Firefox()
    
    #找到一级菜单元素,将鼠标移到上面
    Menu = driver.find_element_by_link_text("menu_name")
    ActionChains(driver).move_to_element(Menu).perform()
    
    #找到二级菜单元素,执行点击操作
    subMenu = driver.find_element_by_link_text("subMenu_name")
    subMenu.click()
    

    2.操作日历控件

    当日历控件(input)的属性readonly="true"时,不能直接对日历控件进行send_keys赋值。

    通常方法是用js直接改变日历控件的value,然后webdriver调用js。

    js获取页面元素的方法为getElementByID,当元素没有ID时,只能用className定位。。。。

    #找到日历元素
    data1 = element.find_element_by_xpath("//tbody[@id='***']/tr[1]/td[3]/input")
    
    #使用js改变日历的value
    js = "document.getElementsByClassName('***')[0].value='2018-05-03';"
    
    #webdriver执行js
    driver.execute_script(js, data1)
    

    3.操作下拉列表:select>option结构

    方法1.定位select,然后通过tag name定义所有的option,通过数组索引定位

    driver.find_element_by_id("select").find_elements_by_tag_name("option")[1].click();

    方法2.定位select,然后通过xpath定位

    driver.find_element_by_xpath("//select[@id='select']").find_element_by_xpath("//option[@value='value1']").click()
    

      

     

      

  • 相关阅读:
    artZoom 图片可放大旋转
    Node.js究竟是什么?
    图片上传 纯js编码
    图片上传jQuery插件(兼容IE8)
    nodejs API(二)
    zuul网关
    Hystrix集群及集群监控turbine
    熔断器Hystrix及服务监控Dashboard
    Ribbon负载均衡及Feign消费者调用服务
    Eureka集群
  • 原文地址:https://www.cnblogs.com/wanwanmom/p/9104202.html
Copyright © 2011-2022 走看看