普通APP的测试与鸿蒙APP的测试有一些共同的特征,但是也有一些区别,其中共同特征是,它们都可以通过cmd的命令提示符工具来进行app的性能测试。
其中区别主要是,对于稳定性测试的命令的区别,性能指标获取方式的命令的区别,安装的命令,卸载的命令,等等。此外,鸿蒙APP还有一个专项测试。
这篇文章就将普通APP的测试方法以及鸿蒙APP的测试的方法进行一定程度的梳理。希望能从中发现一些共通点。
这篇文章作为鸿蒙APP以及安卓APP的第一篇总结性文章,将带着以下问题进行展开:
1:什么是hdc? 什么是adb?
2:adb的shell命令可以用在鸿蒙hdc 的shell上面吗?
3:adb的性能测试的日志文件与hdc的性能测试的日志一样吗?
对于五类性能测试的方法及其log的主要分析。这五类的方法分别是: hdc稳定性测试,hdc性能测试,hdc专项测试,adb稳定性测试,adb性能测试。
4:鸿蒙的包名的格式和安卓的包名的格式一样吗?
带着以上的疑问我将写一篇相关的文章,同时,此次测试的鸿蒙官方文档的出处以及测试的心得也将列出来。
本文很多的描述都是来自 <文心快码>等AI搜索生成。
第二部分、鸿蒙APP的测试详细步骤
第一步、开启DevEco Studio

第二步、选择 "设备管理器"

第三步、在模拟器中启动该设备并打开模拟器

第四步、打开命令提示符 输入 hdc list targets
如果显示的是 127.0.0.1:5555 则说明是查询到了已经连接的所有目标设备为
本地的 127.0.0.1:5555

添加-v参数,则会打印设备详细信息

<以下是参考出处 :
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/hdc-V13\>

第五步、使用pycharm运行自动化测试脚本
验证是否可以使用pycharm工具进行自动化测试的运行。
第六步、使用hdc命令进行稳定性随机测试及其日志分析
稳定性随机测试就是设置参数,并且让程序随机的启动程序,随机的点击,并且设置执行次数的方法,同时也设置了启动程序的时间间隔。
在执行完成之后,可以根据log中保留的日志情况,查看日志中的异常数据,如果含有异常数据,则提交异常数据给开发进行修复。
这种稳定性测试是随机测试,任何应用都可能拉起的,因此它并没有指定APP的名称。而后面介绍的专项测试则指定了应用的名称。
wukong exec 命令含义
-
-s 参数设置随机种子
-
-i 参数设置应用拉起间隔
-
-a 参数设置应用随机拉起测试比例
-
-t 参数设置屏幕随机touch测试比例
-
-c 参数设置执行的次数
比如命令为:
hdc shell wukong exec -s 10 -i 1000 -a 0.28 -t 0.72 -c 100
<LOG 存放路径自动显示在日志中>

<以下是参考出处 :
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/wukong-guidelines-V13 >

第七步
使用hdc命令进行性能测试 SP_Daemon及其日志分析
性能测试通过使用不同的性能测试的指标,来查看系统的性能情况,
包括FPS、CPU、GPU、RAM、Temp等等性能指标
常用命令:
hdc shell SP_daemon -N 2 -t
解释 :
-N 设置采集次数,一秒采集一次
-t 采集GPU 温度,系统芯片温度
<以下是参考出处 :
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/smartperf-guidelines-V13 >


以上是不指定包名的,如果要指定包名,则增加 -PKG 参数 如:
SP_daemon -N 2 -PKG ohos.samples.ecg -c
<LOG存放路径没有自动显示在日志中>
-
采集结果默认输出路径:
/data/local/tmp/data.csv
第八步、使用hdc命令测试稳定性专项测试及其日志分析
专项测试是指定了某一个应用的名称的测试,运行后可以自动生成测试报告"汇总"。
常用命令 :
hdc shell wukong special -C [bundlename] -p
<以下是参考出处 :
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/wukong-guidelines-V13\>
-
可以到我的个人号:atstudy-js,这里有10W+ 热情踊跃的测试小伙伴们,一起交流行业热点、测试技术各种干货,一起共享面试经验、跳槽求职各种好用的。
-
AI测试、 车载测试、自动化测试、银行、金融、游戏、AIGC.

<LOG 存放路径自动显示在日志中>

第九步、研究使用adb shell 中的命令是否可以在hdc中运行
dumpsys是Android操作系统中的一个命令行工具,并不适用于鸿蒙系统。

第十步:使用hdc 进行包名查询
<以下是参考出处 :
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/bm-tool-V13\>
显示所有已安装的Bundle名称: hdc shell bm dump -a


获取app的ability 名字 hdc shell aa dump -a
<以下是参考出处 :
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/aa-tool-V13 >


第十一步:hdc如何抓取终端的日志
<以下是参考出处:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/hdc-V13\>
hdc hilog> a.log

第十二步:hdc的文件传输命令
<以下是参考出处:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/hdc-V13\>
hdc file send localpath remotepath
比如 /data/local/tmp

hdc file recv remotepath localpath

第十三步:
hdc的安装 卸载命令
<以下是参考出处:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/hdc-V5 >
安装
hdc install [-r|-s] src
hdc install E:\example.hap

卸载
hdc uninstall com.example.hello

第十四步:
启动APP 和停止APP
<以下是参考出处:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/aa-tool-V5 >
- 以下是启动app的命令:
aa start [-d <deviceId>] [-a <abilityName> -b <bundleName>]
- 以下是停止app的命令:
aa force-stop <bundleName>
