zoukankan      html  css  js  c++  java
  • selenium的鼠标事件操作

      自动化测试过程中,经常会用到鼠标事件,在selenium的action_chains模块的ActionChains定义了鼠标操作的一些事件,要使用ActionChains类中的方法,首先需要对ActionChains类进行实例化,该类的构造函数参数为driver,实例化后,可以调用它里面的方法。

      ActionChains类的方法列表: 

        click(on_element=None) ——单击鼠标左键

        click_and_hold(on_element=None) ——点击鼠标左键,不松开

        context_click(on_element=None) ——点击鼠标右键

        double_click(on_element=None) ——双击鼠标左键

        drag_and_drop(source, target) ——拖拽到某个元素然后松开

        drag_and_drop_by_offset(source, xoffset, yoffset) ——拖拽到某个坐标然后松开

        key_down(value, element=None) ——按下某个键盘上的键

        key_up(value, element=None) ——松开某个键

        move_by_offset(xoffset, yoffset) ——鼠标从当前位置移动到某个坐标

        move_to_element(to_element) ——鼠标移动到某个元素

        move_to_element_with_offset(to_element, xoffset, yoffset) ——移动到距某个元素(左上角坐标)多少距离的位置

        perform() ——执行链中的所有动作

        release(on_element=None) ——在某个元素位置松开鼠标左键

        send_keys(*keys_to_send) ——发送某个键到当前焦点的元素

        send_keys_to_element(element, *keys_to_send) ——发送某个键到指定元素

      以百度首页的搜索设置为例,首先是悬停在搜索菜单,显示搜索设置后点击操作。实现代码如下:

      

    #导入action_chains的ActionChains类
    from selenium.webdriver.common.action_chains import ActionChains
    from selenium import webdriver
    import time

    driver = webdriver.Chrome()
    driver.maximize_window()
    driver.implicitly_wait(30)
    driver.get("http://www.baidu.com")
    #对ActionChains进行实例化
    actionchains = ActionChains(driver)
    locator=driver.find_element_by_css_selector('#u1 > a.pf')
    #鼠标悬停到设置
    actionchains.move_to_element(locator).perform()
    #点击搜索设置
    driver.find_element_by_xpath('//*[@id="wrapper"]/div[6]/a[1]').click()
    time.sleep(3)
    driver.quit()
  • 相关阅读:
    2019-06-09 学习日记 day30 JS
    2019-06-08 学习日记 day29 CSS
    2019-06-07 学习日记 day28 THML
    2019-06-06 Java学习日记 day27 反射
    2019-06-05 Java学习日记 day26 网络编程
    2019-06-04 Java学习日记 day25 多线程下
    Linux安装Nginx
    Linux安装MySQL
    Linux安装Redis
    Java Swing实战(五)表格组件JTable(1)
  • 原文地址:https://www.cnblogs.com/qixc/p/11797276.html
Copyright © 2011-2022 走看看