回复
DevEco Testing使用入门 原创
zhushangyuan_
发布于 2023-9-9 21:57
浏览
0收藏
DevEco Testing使用入门
DevEco Testing简介
DevEco Testing是OpenHarmony生态整机测试能力中心,为生态合作伙伴接入OpenHarmony生态提供专业测试服务。支持的测试类型包含:稳定性测试、安全测试、性能功耗测试、音视频测试、兼容性测试、分布式测试等,还提供了一些实用工具,比如UI Viewer、设备投屏、Trace解析等。
DevEco Testing安装
访问DevEco Testing网站,点击客户端下载,选择DevEco Testing for Device工具下载即可。按照安装向导完成安装。
下文主要介绍下实用的工具UI Viewer。
UI Viewer工具
UI Viewer工具介绍
实用UI Viewer工具,可以获取页面的DOM树,方便编写自动化测试用例。可以从实用工具中找到UI Viewer的入口,如图:
UI Viewer可以获取应用的界面组件的坐标,组件id,text等各种属性信息,可以用于UI自动化测试。
进入UI Viewer,设备连接到电脑上,选择连接的设备SN。启动需要测试的应用,进入需要自动化测试的页面,在工具上点击相应的组件,即可在右侧显示该组件的属性信息。如下图,Calculate By Tasktoop按钮的被点击的这个点的坐标为[722,1497]。
使用命令uinput模拟屏幕触摸
上文获取了界面上按钮上的一个坐标点,通过点击这个点就可以触发按钮的点击事件。那么,如何使用命令来模拟触发这次点击呢?
我们可以使用uinput命令,对于上述问题,完整的命令如下:
hdc shell uinput -T -c 722 1497 450
其中,-T表示touch屏幕触摸,-c表示click点击。uinput支持鼠标输入、键盘输入、触摸输入、指关节输入更多信息请参考命令行uinput的帮助信息,如下:
# uinput --help
Usage: uinput <option> <command> <arg>...
The option are:
-M --mouse
commands for mouse:
-m <dx> <dy> --move <dx> <dy> -move to relative position (dx,dy),
<dx1> <dy1> <dx2> <dy2> [smooth time] --trace -dx1 dy1 to dx2 dy2 smooth movement
-d <key> --down key -press down a button,
0 is the left button, 1 is the right,
2 is the middle
-u <key> --up <key> -release a button
-c <key> --click <key> -press the left button down,then raise
-b <dx1> <dy1> <id> [press time] [click interval time] --double click
[press time] the time range is more than 1ms but less than 300ms,
[click interval time] the time range is more than 1ms but less than 450ms,
Otherwise the operation result may produce error or invalid operation
-press the left button down,then raise
key value:0 - button left
key value:1 - button right
key value:2 - button middle
key value:3 - button side
key value:4 - button extra
key value:5 - button forward
key value:6 - button back
key value:7 - button task
-s <key> --scroll <key> -positive values are sliding backwards
-g <dx1> <dy1> <dx2> <dy2> [total time] --drag <dx1> <dy1> <dx2> <dy2> [total time],
dx1 dy1 to dx2 dy2 smooth drag
-i <time> --interval <time> -the program interval for the (time) milliseconds
negative values are sliding forwards
-K --keyboard
commands for keyboard:
-d <key> --down <key> -press down a key
-u <key> --up <key> -release a key
-l <key> [long press time] --long_press <key> [long press time] -press and hold the key
-i <time> --interval <time> -the program interval for the (time) milliseconds
-T --touch
commands for touch:
-d <dx1> <dy1> --down <dx1> <dy1> -press down a position dx1 dy1,
-u <dx1> <dy1> --up <dx1> <dy1> -release a position dx1 dy1,
-m <dx1> <dy1> <dx2> <dy2> [smooth time] --smooth movement
<dx1> <dy1> <dx2> <dy2> [smooth time] -smooth movement,
dx1 dy1 to dx2 dy2 smooth movement
-c <dx1> <dy1> [click interval] -touch screen click dx1 dy1
-k --knuckle
commands for knucle:
-s <dx1> <dy1> <dx2> <dy2> [interval time] --single knuckle double click interval time
-d <dx1> <dy1> <dx2> <dy2> [interval time] --double knuckle double click interval time
-i <time> --interval <time> -the program interval for the (time) milliseconds
-g <dx1> <dy1> <dx2> <dy2> [press time] [total time] -drag,
[Press time] not less than 500ms and [total time] - [Press time] not less than 500ms
Otherwise the operation result may produce error or invalid operation
-? --help
参考资料
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
分类
标签
已于2023-12-25 16:56:30修改
赞
收藏
回复
相关推荐