android自動化測試 input

繼續android自動化測試,上周研究瞭下sendevent模擬鼠標鍵盤的方法,比較麻煩。
其實我們可以使用簡單點的指令也能實現類似的功能:
adb shell input XXX
先來看下input有哪些命令,輸入adb shell input,可以看到如下打印:
usage: input …
input text //輸入文字(中文不支持)
input keyevent //keyevent按鍵
input [touchscreen|touchpad|touchnavigation] tap //點擊屏幕
input [touchscreen|touchpad|touchnavigation] swipe [duration(ms)] //屏幕滑動
input trackball press
input trackball roll
input rotationevent 0 1->90 2->180 3->270> //順時針旋轉

非常直觀,就是字面上的意思啦!

input text

輸入一串字符。

例如先進入短信界面,然後在cmd窗口輸入adb shell input text 132abc,然後就可以看到UE屏幕上輸入瞭“123abc”的短信內容;

input keyevent

執行key code代表的事件,其中對應的key code如下表所列:

KeyEvent Value

KEYCODE

Comment

0

KEYCODE_UNKNOWN

1

KEYCODE_MENU

2

KEYCODE_SOFT_RIGHT

3

KEYCODE_HOME

4

KEYCODE_BACK

5

KEYCODE_CALL

6

KEYCODE_ENDCALL

7

KEYCODE_0

0

8

KEYCODE_1

1

9

KEYCODE_2

2

10

KEYCODE_3

3

11

KEYCODE_4

4

12

KEYCODE_5

5

13

KEYCODE_6

6

14

KEYCODE_7

7

15

KEYCODE_8

8

16

KEYCODE_9

9

17

KEYCODE_STAR

*

18

KEYCODE_POUND

#

19

KEYCODE_DPAD_UP

光標上移一位

20

KEYCODE_DPAD_DOWN

光標下移一位

21

KEYCODE_DPAD_LEFT

光標左移一位

22

KEYCODE_DPAD_RIGHT

光標右移一位

23

KEYCODE_DPAD_CENTER

點擊光標所在位置

24

KEYCODE_VOLUME_UP

加聲音

25

KEYCODE_VOLUME_DOWN

減聲音

26

KEYCODE_POWER

按下power鍵

27

KEYCODE_CAMERA

打開照相機

28

KEYCODE_CLEAR

29

KEYCODE_A

30

KEYCODE_B

31

KEYCODE_C

32

KEYCODE_D

33

KEYCODE_E

34

KEYCODE_F

35

KEYCODE_G

36

KEYCODE_H

37

KEYCODE_I

38

KEYCODE_J

39

KEYCODE_K

40

KEYCODE_L

41

KEYCODE_M

42

KEYCODE_N

43

KEYCODE_O

44

KEYCODE_P

45

KEYCODE_Q

46

KEYCODE_R

47

KEYCODE_S

48

KEYCODE_T

49

KEYCODE_U

50

KEYCODE_V

51

KEYCODE_W

52

KEYCODE_X

53

KEYCODE_Y

54

KEYCODE_Z

55

KEYCODE_COMMA

56

KEYCODE_PERIOD

57

KEYCODE_ALT_LEFT

58

KEYCODE_ALT_RIGHT

59

KEYCODE_SHIFT_LEFT

60

KEYCODE_SHIFT_RIGHT

61

KEYCODE_TAB

62

KEYCODE_SPACE

空格

63

KEYCODE_SYM

64

KEYCODE_EXPLORER

打開瀏覽器

65

KEYCODE_ENVELOPE

打開郵件

66

KEYCODE_ENTER

回車/確認

67

KEYCODE_DEL

刪除

68

KEYCODE_GRAVE

`

69

KEYCODE_MINUS

70

KEYCODE_EQUALS

=

71

KEYCODE_LEFT_BRACKET

[

72

KEYCODE_RIGHT_BRACKET

]

73

KEYCODE_BACKSLASH

\

74

KEYCODE_SEMICOLON

;

75

KEYCODE_APOSTROPHE

76

KEYCODE_SLASH

/

77

KEYCODE_AT

@

78

KEYCODE_NUM

79

KEYCODE_HEADSETHOOK

80

KEYCODE_FOCUS

81

KEYCODE_PLUS

82

KEYCODE_MENU

菜單

83

KEYCODE_NOTIFICATION

84

KEYCODE_SEARCH

進入搜索頁面

85

TAG_LAST_KEYCODE

input [touchscreen|touchpad|touchnavigation] tap

在坐標(x,y)出點擊一次

例如adb shell input tap 500 500,就是在屏幕(500,500)處點擊一次;

input [touchscreen|touchpad|touchnavigation] swipe [duration(ms)]

從(x1,y1)滑動到(x2,y2)

例如adb shell input swipe 500 500 1000 500,就是從屏幕(500,500)滑動到(1000,500);

input trackball press

按下滾球(沒用瞭現在)

input trackball roll

移動滾球(沒用瞭現在)

input rotationevent 0 1->90 2->180 3->270>

將屏幕順時針旋轉到0°、90°、180°、270°

例如adb shell input rotationevent 2 就是把屏幕反過來

發佈留言