WEB端UI自动化测试(十一)模拟键盘操作
在测试过程中,有时需要用到键盘,比如刷新页面F5,复制粘贴CV,回车之类的
java.awt包为我们提供了robot类来执行按下和抬起
public synchronized void keyPress(int i) { checkKeycodeArgument(i); peer.keyPress(i); afterEvent(); } public synchronized void keyRelease(int i) { checkKeycodeArgument(i); peer.keyRelease(i); afterEvent(); }
重要的是传什么样的参数,方式有两种:
1. 我们可以传键值对应的整数
2. 也可以直接传键值的event
格式:
robot.keyPress(17);
robot.keyPress(16);
robot.keyPress(77);
robot.keyRelease(17);
robot.keyRelease(16);
robot.keyRelease(77);
或者
robot.keyPress(java.awt.event.KeyEvent.VK_CONTROL);
robot.keyPress(java.awt.event.KeyEvent.VK_SHIFT);
robot.keyPress(java.awt.event.KeyEvent.VK_M);
robot.keyRelease(java.awt.event.KeyEvent.VK_M);
robot.keyRelease(java.awt.event.KeyEvent.VK_CONTROL);
robot.keyRelease(java.awt.event.KeyEvent.VK_SHIFT);
或者
import java.awt.event;
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_SHIFT);
robot.keyPress(KeyEvent.VK_M);
robot.keyRelease(KeyEvent.VK_M);
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyRelease(KeyEvent.VK_SHIFT);
下面是我整理的键值表,网上相关资源很多:
| 常数名称 | 十六进制值 | 十进制值 | 对应按键 |
|
VK_LBUTTON
|
01
|
1
|
鼠标的左键
|
| VK_RBUTTON | 02 | 2 | 鼠标的右键 |
|
VK-CANCEL
|
03
|
3
|
Ctrl+Break(通常不需要处理)
|
| VK_MBUTTON | 04 | 4 | 鼠标的中键(三按键鼠标) |
|
VK_BACK
|
08
|
8
|
Backspace键
|
| VK_TAB | 09 | 9 | Tab键 |
|
VK_CLEAR
|
0C
|
12
|
Clear键(Num Lock关闭时的数字键盘5)
|
| VK_RETURN | 0D | 13 | Enter键 |
|
VK_SHIFT
|
10
|
16
|
Shift键
|
| VK_CONTROL | 11 | 17 | Ctrl键 |
|
VK_MENU
|
12
|
18
|
Alt键
|
| VK_PAUSE | 13 | 19 | Pause键 |
|
VK_CAPITAL
|
14
|
20
|
Caps Lock键
|
| VK_ESCAPE | 1B | 27 | Ese键 |
|
VK_SPACE
|
20
|
32
|
Spacebar键
|
| VK_PRIOR | 21 | 33 | Page Up键 |
|
VK_NEXT
|
22
|
34
|
Page Domw键
|
| VK_END | 23 | 35 | End键 |
|
VK_HOME
|
24
|
36
|
Home键
|
| VK_LEFT | 25 | 37 | LEFT ARROW 键(←) |
|
VK_UP
|
26
|
38
|
UP ARROW键(↑)
|
| VK_RIGHT | 27 | 39 | RIGHT ARROW键(→) |
|
VK_DOWN
|
28
|
40
|
DOWN ARROW键(↓)
|
| VK_Select | 29 | 41 | Select键 |
|
VK_PRINT
|
2A
|
42
|
|
| VK_EXECUTE | 2B | 43 | EXECUTE键 |
|
VK_SNAPSHOT
|
2C
|
44
|
Print Screen键(抓屏)
|
| VK_Insert | 2D | 45 | Ins键(Num Lock关闭时的数字键盘0) |
|
VK_Delete
|
2E
|
46
|
Del键(Num Lock关闭时的数字键盘.)
|
| VK_HELP | 2F | 47 | Help键 |
|
VK_0
|
30
|
48
|
0键
|
| VK_1 | 31 | 49 | 1键 |
|
VK_2
|
32
|
50
|
2键
|
| VK_3 | 33 | 51 | 3键 |
|
VK_4
|
34
|
52
|
4键
|
| VK_5 | 35 | 53 | 5键 |
|
VK_6
|
36
|
54
|
6键
|
| VK_7 | 37 | 55 | 7键 |
|
VK_8
|
38
|
56
|
8键
|
| VK_9 | 39 | 57 | 9键 |
|
VK_A
|
41
|
65
|
A键
|
| VK_B | 42 | 66 | B键 |
|
VK_C
|
43
|
67
|
C键
|
| VK_D | 44 | 68 | D键 |
|
VK_E
|
45
|
69
|
E键
|
| VK_F | 46 | 70 | F键 |
|
VK_G
|
47
|
71
|
G键
|
| VK_H | 48 | 72 | H键 |
|
VK_I
|
49
|
73
|
I键
|
| VK_J | 4A | 74 | J键 |
|
VK_K
|
4B
|
75
|
K键
|
| VK_L | 4C | 76 | L键 |
|
VK_M
|
4D
|
77
|
M键
|
| VK_N | 4E | 78 | N键 |
|
VK_O
|
4F
|
79
|
O键
|
| VK_P | 50 | 80 | P键 |
|
VK_Q
|
51
|
81
|
Q键
|
| VK_R | 52 | 82 | R键 |
|
VK_S
|
53
|
83
|
S键
|
| VK_T | 54 | 84 | T键 |
|
VK_U
|
55
|
85
|
U键
|
| VK_V | 56 | 86 | V键 |
|
VK_W
|
57
|
87
|
W键
|
| VK_X | 58 | 88 | X键 |
|
VK_Y
|
59
|
89
|
Y键
|
| VK_Z | 5A | 90 | Z键 |
|
VK_NUMPAD0
|
60
|
96
|
数字键0键
|
| VK_NUMPAD1 | 61 | 97 | 数字键1键 |
|
VK_NUMPAD2
|
62
|
98
|
数字键2键
|
| VK_NUMPAD3 | 62 | 99 | 数字键3键 |
|
VK_NUMPAD4
|
64
|
100
|
数字键4键
|
| VK_NUMPAD5 | 65 | 101 | 数字键5键 |
|
VK_NUMPAD6
|
66
|
102
|
数字键6键
|
| VK_NUMPAD7 | 67 | 103 | 数字键7键 |
|
VK_NUMPAD8
|
68
|
104
|
数字键8键
|
| VK_NUMPAD9 | 69 | 105 | 数字键9键 |
|
VK_MULTIPLY
|
6A
|
106
|
数字键盘上的*键
|
| VK_ADD | 6B | 107 | 数字键盘上的+键 |
|
VK_SEPARATOR
|
6C
|
108
|
Separator键
|
| VK_SUBTRACT | 6D | 109 | 数字键盘上的-键 |
|
VK_DECIMAL
|
6E
|
110
|
数字键盘上的.键
|
| VK_DIVIDE | 6F | 111 | 数字键盘上的/键 |
|
VK_F1
|
70
|
112
|
F1键
|
| VK_F2 | 71 | 113 | F2键 |
|
VK_F3
|
72
|
114
|
F3键
|
| VK_F4 | 73 | 115 | F4键 |
|
VK_F5
|
74
|
116
|
F5键
|
| VK_F6 | 75 | 117 | F6键 |
|
VK_F7
|
76
|
118
|
F7键
|
| VK_F8 | 77 | 119 | F8键 |
|
VK_F9
|
78
|
120
|
F9键
|
| VK_F10 | 79 | 121 | F10键 |
|
VK_F11
|
7A
|
122
|
F11键
|
| VK_F12 | 7B | 123 | F12键 |
|
VK_NUMLOCK
|
90
|
144
|
Num Lock 键
|
| VK_SCROLL | 91 | 145 | Scroll Lock键 |
|
|
|
|
|
| 上面没有提到的:(都在大键盘) | |||
|
VK_LWIN
|
|
91
|
左win键
|
| VK_RWIN | 92 | 右win键 | |
|
VK_APPS
|
|
93
|
右Ctrl左边键,点击相当于点击鼠标右键,会弹出快捷菜单
|
| 186 | ;(分号) | ||
|
|
|
187
|
=键
|
| 188 | ,键(逗号) | ||
|
|
|
189
|
-键(减号)
|
| 190 | .键(句号) | ||
|
|
|
191
|
/键
|
| 192 | `键(Esc下面) | ||
|
|
|
219
|
[键
|
| 220 | 键 | ||
|
|
|
221
|
]键
|
| 222 | ‘键(引号) |

浙公网安备 33010602011771号