Selenium基础 — 键盘操作
1、键盘时间介绍
我们在实际的测试工作中,有时候我们在测试时需要使用tab
键将焦点转移到下一个元素,用于验证元素的排序是否正确。
webdriver
的Keys()
类提供键盘上所有按键的操作,甚至可以模拟一些组合建的操作,如Ctrl+A
,Ctrl+C
,Ctrl+V
等。
在Selenium中使用send_keys()
来执行模拟键盘上所有按键的操作。
2、使用Keys类来处理键盘操作
Keys类键盘事件 | 作用说明 |
---|---|
send_keys(Keys.BACK_SPACE) | 删除键(Backspace) |
send_keys(Keys.SPACE) | 空格键(Space) |
send_keys(Keys.TAB) | Tab键 |
send_keys(Keys.ESCAPE) | 回退键(Esc) |
send_keys(Keys.ENTER) | 回车键(Enter) |
send_keys(Keys.CONTROL,'a') | 全选(Ctrl+A) |
send_keys(Keys.CONTROL,'c') | 复制(Ctrl+C) |
send_keys(Keys.CONTROL,'x') | 剪切(Ctrl+X) |
send_keys(Keys.CONTROL,'v') | 粘贴(Ctrl+V) |
send_keys(Keys.F1) | 键盘F1 |
send_keys(Keys.F12) | 键盘F12 |
3、练习
页面代码片段
<!DOCTYPE html>
<html lang="zh-cn">
<body>
<div id="zc"><legend>注册用户A</legend><p id="p1"><label for="userA">账号A</label><input type="textA" name="userA" id="userA" class="c_uA" placeholder="账号A" required="" value=""></p><p><label for="password">密码A</label><input type="password" name="passwordA" id="passwordA" placeholder="密码A" value=""></p>
</div>
</body>
</html>
脚本代码:
"""
1.学习目标:掌握selenium中键盘事件的操作
2.语法2.1 导入Keys类from selenium.webdriver.common.keys import Keys2.2 使用元素.send_keys(键名称)1.单个键使用(Keys.键名称)注意:键名称全大写字母2.组合键(Keys.键名称,"c")3.需求在页面中,完成文字内容的复制操作。
"""
# 1.导入selenium
from selenium import webdriver
from time import sleep
import os
from selenium.webdriver.common.keys import Keys# 2.打开浏览器
driver = webdriver.Chrome()# 3.打开页面
url = "file:///" + os.path.abspath("./1.html")
driver.get(url)# 4.键盘事件
# 在账号A中输入"Selenium",将输入的内容复制到密码A输入框中
# 4.1 定位账号A和电话A
textA = driver.find_element_by_id("userA") # 账号A
passwordA = driver.find_element_by_id("passwordA") # 密码A# 4.2 在账号A中输入"Selenium"
textA.clear()
textA.send_keys("Seleniumm")
sleep(2)# 4.3 使用退格键删除m字母
textA.send_keys(Keys.BACKSPACE)
sleep(2)# 4.4 将账号A中的文字复制
# 全选账号A中的文字
textA.send_keys(Keys.CONTROL, "a")
# 复制账号A中的文字
textA.send_keys(Keys.CONTROL, "c")# 4.5 将复制的内容粘贴到密码A输入框中
passwordA.send_keys(Keys.CONTROL, "v")# 5.关闭浏览器
sleep(2)
driver.quit()
最好我这里给你们分享一下我所积累和真理的文档和学习资料有需要是领取就可以了
1、学习思路和方法
这个大纲涵盖了目前市面上企业百分之99的技术,这个大纲很详细的写了你该学习什么内容,企业会用到什么内容。总共十个专题足够你学习
2、想学习却无从下手,该如何学习?
这里我准备了对应上面的每个知识点的学习资料、可以自学神器,已经项目练手。
3、软件测试/自动化测试【全家桶装】学习中的工具、安装包、插件....
4、有了安装包和学习资料,没有项目实战怎么办,我这里都已经准备好了往下看
最后送上一句话:
世界的模样取决于你凝视它的目光,自己的价值取决于你的追求和心态,一切美好的愿望,不在等待中拥有,而是在奋斗中争取。
如果我的博客对你有帮助、如果你喜欢我的文章内容,请 “点赞” “评论” “收藏” 一键三连哦
Selenium基础 — 键盘操作相关推荐
- selenium中键盘操作
前言 在web测试中,可能会遇到一些需要键盘操作.在selenium中,提供了一个Keys类,来处理键盘操作.Keys类中,几乎提供了所有的键盘快捷键组合操作. DEMO 举个例子,在百度首页,输入内 ...
- python selenium鼠标点击_python selenium鼠标键盘操作(ActionChains)
用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击.双击.点击鼠标右键.拖拽等等.而selenium给我们提供了一个类来处理这类事件--ActionChains sele ...
- selenium.模拟键盘操作(Keys)
Keys源码: NULL = '\ue000'CANCEL = '\ue001' # ^breakHELP = '\ue002'BACKSPACE = '\ue003'BACK_SPACE = BAC ...
- Selenium-鼠标和键盘操作
Selenium-鼠标和键盘操作 1.鼠标操作 1.1 为什么要操作鼠标? 1.2 鼠标操作的方法 1.3 鼠标执行-perform() 1.4 鼠标右击-context_click() 1.4.1 ...
- [Python从零到壹] 九.网络爬虫之Selenium基础技术万字详解(定位元素、常用方法、键盘鼠标操作)
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
- Selenium之鼠标和键盘操作及扩展
概念 在使用 Selenium WebDriver 做自动化测试的时候,会经常模拟鼠标和键盘的一些行为.比如使用鼠标单击.双击.右击.拖拽等动作:或者键盘输入.快捷键使用.组合键使用等模拟键盘的操作. ...
- python selenium模拟键盘_Python+Selenium自动化篇-7-模拟键盘操作
0.导入键盘类Keys() selenium中的Keys()类提供了大部分的键盘操作方法:通过send_keys()方法来模拟键盘上的按键. # 导入键盘类 Keys() from selenium. ...
- Selenium自动化测试-6.鼠标键盘操作
------·今天距2020年77天·------ 这是ITester软件测试小栈第59次推文 大家好 我是vivi小胖虎 作为测试 好像对于点点点这事一直放不下 如何让点点点变得更简单 让人变得更懒 ...
- pythonselenium教程模拟鼠标和键盘_【02篇】python+selenium实现Web自动化:鼠标操作和键盘操作!...
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第二篇博 ...
最新文章
- linux上使用git把代码push到gitee上
- PyQt5 图片兼容性问题:libpng warning: bKGD: invalid.,原因及解决办法。
- python编程的条件语句_自学Python编程【第五节】if条件语句
- Linux中Shell数组的笔记
- android 线程太多,应用程序可能在其主线程上做了太多的工作。
- 图形的装饰教案计算机,《电脑图案设计师》教案教学设计
- 从零开始的linux 第五章
- SQL的注入式攻击方式和避免方法
- 《MFC游戏开发》笔记三 游戏贴图与透明特效的实现
- RVCT31编译问题
- JavaScript算法 之 选择排序
- 那些年出现的遇到的 错误 VS (长期)
- 系统集成项目管理工程师考试题型
- python与城市规划_读书报告:地理信息系统与城市规划管理
- win7 开WiFi共享
- ZFM_RFC_FIDOC-创建财务凭证-BAPI_ACC_DOCUMENT_CHECK/BAPI_ACC_DOCUMENT_POST/POSTING_INTERFACE_DOCUMENT
- Flutter 利用 FFI,绕过 Android JNI 直接调用 C++ 层!
- Java MD5签名需要使用UTF-8格式,利用MD5加密后转成大写
- HDU 4826 双向DP
- jacob不能在Linux系统使用!