场景
我们在实际的测试工作中,有时候需要使用tab键将焦点移动到下一个元素,用于验证元素的排序是否正确。webdriver的Keys()类提供键盘上所有的操作,甚至可以模拟一些组合键的操作,如Ctrl+A,Ctrl+C/Ctrl+V等,在某些更复杂的情况下,还会出现使用send_keys()来模拟上下键来操作下拉列表的情况
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#!/usr/bin/env python # -*- codinfg:utf-8 -*- ''' @author: Jeff LEE @file: 键盘事件.py @time: 2020-02-02 11:14 @desc: 键盘事件 ''' from selenium import webdriver from selenium.webdriver.common.keys import Keys import time driver = webdriver.Firefox() driver.get( 'https://www.baidu.com/' ) #输入搜索内容 driver.find_element_by_id( "kw" ).clear() driver.find_element_by_id( "kw" ).send_keys( "uniquefus" ) time.sleep( 1 ) #删除多输入的s driver.find_element_by_id( "kw" ).send_keys(Keys.BACKSPACE) time.sleep( 1 ) #输入空格键 driver.find_element_by_id( "kw" ).send_keys(Keys.SPACE) time.sleep( 1 ) driver.find_element_by_id( "kw" ).send_keys( "selenium" ) time.sleep( 1 ) #Ctrl+a 全选内容 driver.find_element_by_id( "kw" ).send_keys(Keys.CONTROL, 'a' ) time.sleep( 1 ) #Ctrl+x 全选内容 driver.find_element_by_id( "kw" ).send_keys(Keys.CONTROL, 'x' ) time.sleep( 1 ) #Ctrl+v 全选内容 driver.find_element_by_id( "kw" ).send_keys(Keys.CONTROL, 'v' ) time.sleep( 1 ) driver.find_element_by_id( "su" ).click() time.sleep( 2 ) driver.quit() |