README_zh.md
1# WuKong部件
2## 工具介绍
3
4OpenHarmony稳定性测试自动化工具,通过模拟无序的用户行为,对OpenHarmony系统及应用进行稳定性压力测试。
5
6## 支持功能
7
8> 当前版本支持如下功能,扩展能力后续规划持续改进
9
10- 支持RK3568、Hi3516
11- 支持Shell启动
12- 支持整机应用拉起
13- 支持设置随机种子,按固定随机序列拉起
14- 支持设置应用拉起间隔,默认1000ms
15- 支持设置应用拉起次数,默认次数10次
16- 支持查询应用拉起bundle名、ability名
17- 支持注入随机事件
18 - Touch事件注入
19 - Motion事件注入
20- 支持wukong运行日志打印
21- 支持屏蔽unvisible应用启动
22- 支持单应用测试
23- 支持休眠唤醒专项测试
24
25---
26
27## 使用方式
28
29```bash
30> hdc_std shell
31# wukong exec -s 10 -i 1000 -a 0.28 -t 0.72 -c 100
32```
33
34```bash
35> hdc_std shell wukong exec -s 10 -i 1000 -a 0.28 -t 0.72 -c 100
36```
37
38wukong exec 为主命令,-s 参数设置随机种子,10为种子值;-i 参数设置应用拉起间隔,1500单位ms,-c 参数设置执行次数
39
40---
41
42## 命令说明
43
44| 命令 | 功能 |
45| :------------- | :--------------------------------------------- |
46| wukong version | 查询WuKong版本号 |
47| wukong help | 查询WuKong帮助信息 |
48| wukong appinfo | 查询支持拉起应用entryName和对应的mainAbility名 |
49| wukong exec | 执行WuKong测试命令,和选项配合使用 |
50
51---
52
53## 选项说明
54
55| 短选项 | 长选项 | 功能 | 备注 |
56| :----- | --------------- | :--------------------------- | :------- |
57| -v | --version | 查询WuKong版本号 | |
58| -k | --spec_insomnia | 设置休眠唤醒专项测试 | |
59| -h | --help | 查询WuKong帮助信息 | |
60| -u | --touch_pos | 设置单次touch事件 | |
61| -s | --seed | 设置随机种子 | 随机值 |
62| -i | --interval | 设置执行间隔 | 单位ms |
63| -c | --count | 设置执行次数 | 单位次数 |
64| -b | --bundle | 设置单应用测试 | 被测应用 |
65| -a | --appswitch | 设置所有应用随机拉起测试比例 | 百分比 |
66| -t | --touch | 设置屏幕随机touch测试比例 | 百分比 |
67| -x | --xSrc | 设置滑动起点 x 坐标 | 像素 |
68| -y | --ySrc | 设置滑动起点 y 坐标 | 像素 |
69| -m | --xDst | 设置滑动终点 m 坐标 | 像素 |
70| -n | --yDst | 设置滑动终点 n 坐标 | 像素 |
71
72
73> 备注:配置相同随机种子,会生成相同随机事件序列
74
75---
76
77## 推送wukong至设备
78
79> 稳定性测试自动化工具wukong 3.1Release版本暂时不随版本编译,使用时需自行编译后推送至被测OpenHarmony设备。后续随版本编译后,直接使用版本即可。
80
81
82### 下载代码
83
84在工程test目录下执行如下命令下载wukong仓代码。
85
86```shell
87git clone https://gitee.com/openharmony/wukong.git -b OpenHarmony-3.1-Release
88```
89### 编译修改
90
91修改build仓中subsystem_config.json文件,增加如下字段。
92
93```shell
94"wukong": {
95 "path": "test/wukong",
96 "name": "wukong"
97 },
98```
99修改productdefine_common仓中rk3568.json文件,增加如下字段。
100```shell
101"wukong:wukong":{},
102```
103
104
105### 构建方式
106
107```shell
108./build.sh --product-name rk3568 --build-target wukong
109```
110
111### 推送方式
112
113```shell
114hdc_std shell mount -o rw,remount /
115hdc_std file send wukong /
116hdc_std shell chmod a+x /wukong
117hdc_std shell mv /wukong /bin/
118```
119
120### Reference
121
122[monkey](https://github.com/aosp-mirror/platform_development/tree/master/cmds/monkey)