zoukankan      html  css  js  c++  java
  • Selenium 2自动化测试实战10(鼠标事件)

    一、鼠标事件


    1. webdriver中,关于鼠标操作的方法封装在ActionChains类中
    ActionChains类提供了鼠标操作的常用方法:
    perform:执行所有ActionChains中存储的行为
    context_click():右击
    double_click():双击
    drag_and_drop():拖动
    move_to_element():鼠标悬停


    2. 鼠标右击操作

    #yunpan.py
    #coding:utf-8
    from selenium.webdriver.common.action_chains import ActionChains
    from selenium import webdriver
    
    driver=webdriver.Chrome()
    driver.get("https://yunpan.360.cn")
    #....... 
    #定位到要右击的元素
    right_click=driver.find_element_by_id("XXX")
    #对定位到的元素执行鼠标右键操作
    ActionChains(driver).context_click(right_click).perform() 

    (1)from selenium.webdriver.common.action_chains import ActionChains
      导入提供鼠标操作的ActionChains类。
    (2)ActionChains(driver)
      调用ActionChains()类,将浏览器驱动driver作为参数传入
    (3)context_cilick(right_click)
      context_click()方法用于模拟鼠标右键操作,在调用时需要指定元素定位
    (4)perform()
      执行所有ActionChains中存储的行为,可以理解成是对整个操作的提交动作
    3. 鼠标悬停
    move_to_element()方法可以模拟鼠标悬停的动作,器用法与context_click()相同

    #mouse.py
    #定位到要悬停的元素
    above=driver.find_element_by_id('xxx')
    
    #对定位到的元素执行悬停操作
    ActionChains(driver).move_to_element(above).perform()
    #.....
    

     

    4. 鼠标双击操作
    double_click()方法用于模拟鼠标双击操作

    #mouse.py
    #定位到要悬停的元素
    double_click=driver.find_element_by_id('xxx')
    
    #对定位到的元素执行双击操作
    ActionChains(driver).double_click(double_click).perform()
    #.....
    

     

    5. 鼠标拖放操作
    drag_and_drop(source,target)在源元素上按住鼠标左键,然后移动到目标元素上释放
    source:鼠标拖动的源元素
    target:鼠标释放的目标元素

    #mouse.py
    #........
    
    #定位元素的原位置
    element=driver.find_element_by_id("XX")
    #定位元素要移动到的目标位置
    target=driver.find_element_by_id("XX")
    
    #执行元素的拖放操作
    ActionChains(driver).drag_and_drop(element,target).perform()
    #.......
    

      






  • 相关阅读:
    LeetCode Find Duplicate File in System
    LeetCode 681. Next Closest Time
    LeetCode 678. Valid Parenthesis String
    LeetCode 616. Add Bold Tag in String
    LeetCode 639. Decode Ways II
    LeetCode 536. Construct Binary Tree from String
    LeetCode 539. Minimum Time Difference
    LeetCode 635. Design Log Storage System
    LeetCode Split Concatenated Strings
    LeetCode 696. Count Binary Substrings
  • 原文地址:https://www.cnblogs.com/Rita-LJ/p/11543459.html
Copyright © 2011-2022 走看看