【WEB自动化测试】-鼠标和键盘操作

这篇具有很好参考价值的文章主要介绍了【WEB自动化测试】-鼠标和键盘操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、鼠标操作

1. 鼠标操作

常见的鼠标操作有:点击、右击、双击、悬停、拖拽等,对于这些鼠标操作Selenium都封装了相应的操作方法。

1.1 为什么操作鼠标

现在Web产品中村子啊丰富的鼠标交互方式,作为一个Web自动化测试框架。需要应对这些鼠标操作的应用场景。

1.2 鼠标操作的方法

说明:在Selenium中将操作鼠标的方法封装在ActionChains类中。

实例化对象:

        action = ActionChains(driver)

方法:

        1. context_click(element)   右击 -->模拟鼠标右键点击效果

        2. double_click(element)  双击-->模拟鼠标双击效果

        3. drag_and_drop(source,target)  拖动 -->模拟鼠标拖动效果

        4. move_to_element(element)     悬停 --> 模拟鼠标悬停效果

        5. perform()                     执行 -->此方法用来执行以上所有鼠标操作

提示:

        鼠标操作的所有方法都需要执行perform() 方法才能生效。

1.3 鼠标执行-perform() 

说明:在ActionChains类中所有提供的鼠标事件方法,在调用的时候所有的行为都存储在ActionChains对象中。

        而perform()方法就是真正去执行所有的鼠标事件。

1.4 鼠标右键-context_click

说明:对于点击鼠标右键,如果弹出的就是浏览器默认的菜单,Selenium没有提供操作菜单选项。如果是自定义的右键菜单,则可以通过元素定位来操作菜单中的选项。

1. 导包:from selenium.webdriver import ActionChains

2. 实例化ActionChains对象:action = ActionChains(driver)

3. 调用右键方法:action .context_click(element)

4. 执行:action.perform()

1.5 鼠标双击-double_click()

说明:模拟鼠标左键双击操作

1.6 鼠标拖拽-drag_and_drop(源元素,目的元素)

说明:模拟鼠标拖拽操作

1.7 鼠标悬停-move_to_element()

说明:模拟鼠标悬停在指定的元素上

注意:在该方法执行时,不要动鼠标

    # 实现百度的搜索设置,搜索展示条数
    driver = webdriver.Chrome()
    driver.get("https://www.baidu.com/")
    user_setting = driver.find_element(By.ID, "s-usersetting-top")
    action = ActionChains(driver)
    action.move_to_element(user_setting) # 鼠标悬浮
    action.perform()
    driver.find_element(By.LINK_TEXT,"搜索设置").click()
    # 页面跳转之后,停留时间,加载页面
    time.sleep(2) 
    nr_1 = driver.find_element(By.ID, "nr_1")
    nr_2 = driver.find_element(By.ID, "nr_2")
    nr_3 = driver.find_element(By.ID, "nr_3")
    time.sleep(2)
    if nr_1.is_selected():  # 判断是否被选中
        nr_2.click()
    elif nr_2.is_selected():
        nr_3.click()

    time.sleep(5)
    driver.quit()

二、键盘操作

Selenium中吧键盘的按键都封装在Keys类中

2.1 Keys类

from selenium.webdriver.common.keys import Keys

2.2 常用键盘操作 

1. 元素.send_keys(Keys.BACK_SPACE)  删除键(BackSpace)

2. 元素.send_keys(Keys.SPACE)  空格键(Space)

3. 元素.send_keys(Keys.TAB)  制表键(Tab)

4. 元素.send_keys(Keys.ESCAPE)  回退键(Esc)

5. 元素.send_keys(Keys.ENTER)  回车键(Enter)

6. 元素.send_keys(Keys.CONTROL,'a')  全选(Ctrl+A)

6. 元素.send_keys(Keys.CONTROL,'c')  复制(Ctrl+C)文章来源地址https://www.toymoban.com/news/detail-606741.html

2.3 代码实例

    try:
        driver = webdriver.Chrome()
        driver.get("http://localhost/backend/page/login/login.html")
        user = driver.find_element(By.CSS_SELECTOR, '[placeholder="账号"]')
        user.clear()
        user.send_keys("admin1")
        user.send_keys(Keys.BACK_SPACE)
        user.send_keys(Keys.CONTROL, 'a')
        user.send_keys(Keys.CONTROL, 'c')
        time.sleep(1)
        pwd = driver.find_element(By.CSS_SELECTOR, '[placeholder="密码"]')
        pwd.send_keys(Keys.CONTROL, 'a')
        pwd.send_keys(Keys.CONTROL, 'v')

        time.sleep(5)
    except Exception as e:
        print(e)
    finally:
        driver.quit()

到了这里,关于【WEB自动化测试】-鼠标和键盘操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【UI自动化测试技术】自动化测试研究:Python+Selenium+Pytest+Allure,详解UI自动化测试,学习模拟鼠标+模拟键盘进行相关操作(精)(四)

    1、了解元素交互的常用方法 2、学习如何对多选元素进行操作 3、 学习模拟鼠标进行相关操作 ( 本节目标 ) 4、 学习模拟键盘进行相关操作 ( 本节目标 ) 用于向 Web 浏览器提供虚拟化设备输入操作的低级接口.除了刚刚讲过的Web元素交互之外, Actions 接口 还提供了对指定输

    2024年03月24日
    浏览(89)
  • Web自动化测试进阶 —— Selenium模拟鼠标操作

    在实际的web产品测试中,对于鼠标的操作,不单单只有click(),有时候还要用到右击、双击、拖动等操作,这些操作包含在ActionChains类中。 首先导入ActionChains类: from selenium.webdriver.common.action_chains import ActionChains context_click():右击 double_click():双击 drag_and_drop():拖动 move_to_

    2024年02月09日
    浏览(52)
  • 自动化测试-web(弹窗/滚动条/鼠标/等待等操作)

    为什么要处理弹窗? 如果页面操作过程中,有弹窗出现,不处理,无法继续对页面操作。 弹窗类型: js原生弹窗: 警告框、输入框、提示框,这些必须处理 如何处理: 1)获取弹窗对象 2)点击同意或取消方法 alert 弹窗 :只有信息及确认按钮 confirm弹窗 :在alert弹窗基础上

    2024年04月15日
    浏览(43)
  • selenium自动化测试入门 —— 键盘鼠标事件ActionChains

    在使用 Selenium WebDriver 做自动化测试的时候,会经常模拟鼠标和键盘的一些行为。比如使用鼠标单击、双击、右击、拖拽等动作;或者键盘输入、快捷键使用、组合键使用等模拟键盘的操作。在 WebDeriver 中,有一个专门的类来负责实现这些测试场景,那就是 ActionChains类,在使

    2024年04月16日
    浏览(40)
  • Selenium+python自动化测试之鼠标和键盘事件

    前面的例子中,点击事件都是通过click()方法实现鼠标的点击事件。其实在WebDriver中,提供了许多鼠标操作的方法,这些操作方法都封装在ActionChains类中,包括鼠标右击、双击、悬停和鼠标拖动等功能。 ActionChains类提供的鼠标操作事件 context_click():点击鼠标右键 double_click():双

    2024年04月09日
    浏览(72)
  • python自动化办公--pyautogui控制鼠标和键盘操作

    在公司某些工作场景下,需要大量重复的工作,重复的工作完全可以通过python软件的自动化实现,省时省力。本文分享python自动化办公的利器之一--pyautogui,通过pyautogui可以轻松控制鼠标和键盘操作。 PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和

    2024年02月16日
    浏览(48)
  • PC端windows自动化:pywinauto(四)鼠标和键盘操作

    pywinauto自带的鼠标操作有些时候并不能完全满足要求,可以调用mouse的方法 导入: 常见操作:   导入: pywinauto模拟操作键盘,需要使用到 pywinauto.keyboard.send_keys这个方法: ◆ pywinauto.keyboard.send_key 可以通过键盘完成以下操作:全选(ctrl+A) 复制(Ctrl+C) 粘贴(Ctrl+V) 回车(Ent

    2024年02月03日
    浏览(49)
  • python自动化运维——模拟键盘鼠标重复性操作Pyautoui

    将程序与cmd.xls文件放在同一文件夹,每一步的截图也放在当前文件夹 通过图片在屏幕上面进行比对,找到点击处进行自动化操作 自动化rpa测试 1. Pyautoui 模块:主要针对图片进行定位 pyautogui.locateCenterOnScreen() ,在屏幕上面找到该图片位置后进行 pyautogui.click 单击,双击,右键

    2024年02月06日
    浏览(46)
  • python+pyautogui—PC端自动化(二)键盘鼠标及对话框操作

    目录 鼠标操作 获取鼠标所在位置坐标 获取鼠标所在位置的RGB值 鼠标点击 鼠标按下和释放 鼠标移动 鼠标拖拽 滚轮滚动 键盘操作 输入英文字符 普通按键操作press 按下与抬起 组合键hotkey 持续按键hold 弹出对话框 alert confirm prompt password 获取鼠标所在位置坐标 获取鼠标所在位

    2024年02月12日
    浏览(43)
  • web自动化—selenium中键盘的操作

    这里有个输入框,我需要输入对应的数字,按enter回车键实现一个搜索   显然,我这里就使用了selenium来模拟键盘按enter键 1、Ctrl+A 2、Ctrl+C 3、Ctrl+V 4、键盘F4【其他的直接更换】 5、回车 6、回退 ..... 具体的其实对应的都在Keys类里面,这里直接分享出来,需要哪个就用

    2024年02月11日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包