web自动化测试第7步:模拟键盘事件(Keys)
来源:互联网 发布:mac环境变量在哪 编辑:程序博客网 时间:2024/06/05 04:04
对于模拟键盘事件,我们之前的课程中已经有了一些了解,比如基础操作send_keys()方法输入任意值、鼠标事件key_down()、key_up()等,这一节呢,我们也比较简单,我们专门来讲一讲如何使用引入的common.keys库
1.基于send_keys()基础上的key
driver.find_element_by_id("kw").send_keys(Keys.BACK_SPACE)
如上所示,在基于send_keys()方法的基础上,输入Keys类下封装的方法
下面是keys库的源码
from __future__ import unicode_literalsclass Keys(object): """ Set of special keys codes. """ NULL = '\ue000' CANCEL = '\ue001' # ^break HELP = '\ue002' BACKSPACE = '\ue003' BACK_SPACE = BACKSPACE TAB = '\ue004' CLEAR = '\ue005' RETURN = '\ue006' ENTER = '\ue007' SHIFT = '\ue008' LEFT_SHIFT = SHIFT CONTROL = '\ue009' LEFT_CONTROL = CONTROL ALT = '\ue00a' LEFT_ALT = ALT PAUSE = '\ue00b' ESCAPE = '\ue00c' SPACE = '\ue00d' PAGE_UP = '\ue00e' PAGE_DOWN = '\ue00f' END = '\ue010' HOME = '\ue011' LEFT = '\ue012' ARROW_LEFT = LEFT UP = '\ue013' ARROW_UP = UP RIGHT = '\ue014' ARROW_RIGHT = RIGHT DOWN = '\ue015' ARROW_DOWN = DOWN INSERT = '\ue016' DELETE = '\ue017' SEMICOLON = '\ue018' EQUALS = '\ue019' NUMPAD0 = '\ue01a' # number pad keys NUMPAD1 = '\ue01b' NUMPAD2 = '\ue01c' NUMPAD3 = '\ue01d' NUMPAD4 = '\ue01e' NUMPAD5 = '\ue01f' NUMPAD6 = '\ue020' NUMPAD7 = '\ue021' NUMPAD8 = '\ue022' NUMPAD9 = '\ue023' MULTIPLY = '\ue024' ADD = '\ue025' SEPARATOR = '\ue026' SUBTRACT = '\ue027' DECIMAL = '\ue028' DIVIDE = '\ue029' F1 = '\ue031' # function keys F2 = '\ue032' F3 = '\ue033' F4 = '\ue034' F5 = '\ue035' F6 = '\ue036' F7 = '\ue037' F8 = '\ue038' F9 = '\ue039' F10 = '\ue03a' F11 = '\ue03b' F12 = '\ue03c' META = '\ue03d' COMMAND = '\ue03d'
2.百度注册输入框,keys示例
from selenium import webdriverfrom selenium.webdriver.common.keys import Keysfrom time import sleep# 模拟键盘操作-百度登录页面driver = webdriver.Chrome()driver.get("https://passport.baidu.com/v2/?reg")# 用户名元素定位和手机号元素定位name_element = driver.find_element_by_css_selector("#TANGRAM__PSP_3__userName")phone_element = driver.find_element_by_css_selector("#TANGRAM__PSP_3__phone")# 在手机号输入框输入数据:testphone_element.send_keys("test")# 在手机号输入框进行组合键Ctrl+a 、 Ctrl+xphone_element.send_keys(Keys.CONTROL, "a")sleep(2)phone_element.send_keys(Keys.CONTROL, "x")# 在名字输入框输入组合键Ctrl+vname_element.send_keys(Keys.CONTROL, "v")# 在名字输入框输入数字键3name_element.send_keys(Keys.NUMPAD3)
阅读全文
0 0
- web自动化测试第7步:模拟键盘事件(Keys)
- web自动化测试第6步:模拟鼠标操作(ActionChains)
- web自动化(7)----模拟事件
- |自动化测试| QTP模拟鼠标和键盘事件整理
- web自动化测试第2步:定位元素
- web自动化测试第9步:切换页面frame
- Android自动化测试初探(四): 模拟键盘鼠标事件(Socket+Instrumentation实现)
- Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
- Android自动化测试初探(四): 模拟键盘鼠标事件(Socket+Instrumentation实现)
- Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
- Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
- Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
- Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
- Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
- Android自动化测试初探(四): 模拟键盘鼠标事件(Socket+Instrumentation实现)
- Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
- Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
- Android自动化测试初探(四): 模拟键盘鼠标事件(Socket+Instrumentation实现)
- xml应用rss的使用
- Unity热更新代码
- css的transform和transition属性
- 求(1~n)个数中1的个数
- 最大数问题 oj92
- web自动化测试第7步:模拟键盘事件(Keys)
- Unity制作SurvivalShooter游戏
- Tensorflow-简介
- 基于matlab的DTMF信号的产生和检测(2)
- HDU 1896:Stones(优先队列)
- CMD( 三)操作详解
- NYOJ 216 A problem is easy
- 继承HttpServletRequestWrapper以实现在Filter中修改HttpServletRequest的参数
- pythonWeb -- Django开发-模板 自带的模板哦