在web测试中,可能会遇到一些需要键盘操作。在selenium中,提供了一个Keys类,来处理键盘操作。Keys类中,几乎提供了所有的键盘快捷键组合操作。
DEMO举个例子,在百度首页,输入内容后,点击enter键,删除最后一个字符点击enter键,全选、复制、粘贴:
# @Time : 2021/10/9 20:12
# @Author : admin
# @File : sel_lesson_keyboard.py
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
chr_driver = webdriver.Chrome()
chr_driver.maximize_window()
chr_driver.get("http://www.baidu.com")
# 输入内容,并点击enter按钮
chr_driver.find_element_by_xpath('//*[@id="kw"]').send_keys("腾讯课堂", Keys.ENTER)
time.sleep(3)
# 删除最后一个字符,并再次点击enter键
chr_driver.find_element_by_xpath('//*[@id="kw"]').send_keys(Keys.BACK_SPACE, Keys.ENTER)
time.sleep(3)
# 全选
chr_driver.find_element_by_xpath('//*[@id="kw"]').send_keys(Keys.CONTROL, 'a')
# 复制
chr_driver.find_element_by_xpath('//*[@id="kw"]').send_keys(Keys.CONTROL, 'c')
# 粘贴
chr_driver.find_element_by_xpath('//*[@id="kw"]').send_keys(Keys.CONTROL, 'v')
效果:
Keys.BACK_SPACE:删除键
Keys.SPACE:空格键
Keys.TAB:Tab键
Keys.ESCAPE:回退键
Keys.ENTER:回车键
Keys.CONTROL,”a”:组合键,Ctrl + A
Keys.CONTROL,”x”:组合键,Ctrl + X
Keys.CONTROL,”v”:组合键,Ctrl + V
Keys.CONTROL,”c”:组合键,Ctrl + C
Keys.F1/F12:F1/F12键
Keys.SHIFT:大小写转换键(Shift)
Keys.CONTROL:Control键(Ctrl)
Keys.ALT:ALT键(Alt)
Keys.ESCAPE:返回键(Esc)
Keys.PAGE_UP:翻页键上(Page Up)
Keys.PAGE_DOWN:翻页键下(Page Down)
Keys.END:行尾键(End)
Keys.HOME:行首键(Home)
Keys.LEFT:方向键左(Left)
Keys.UP:方向键上(Up)
Keys.RIGHT:方向键右(Right)
Keys.DOWN:方向键下(Down)
Keys.INSERT:插入键(Insert)
DELETE:删除键(Delete)
Keys.NUMPAD0 ~ NUMPAD9:数字键1-9



