鸿蒙APP测试实战:从HDC命令到专项测试

普通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>

相关推荐
IT成长日记26 分钟前
Elasticsearch集群手动分片分配指南:原理与实践
大数据·elasticsearch·手动分片分配
小草帽学编程28 分钟前
鸿蒙Next开发真机调试签名申请流程
android·华为·harmonyos
陈奕昆31 分钟前
5.2 HarmonyOS NEXT应用性能诊断与优化:工具链、启动速度与功耗管理实战
华为·harmonyos
QBoson32 分钟前
量子计算+AI:特征选择与神经网络优化创新应用
人工智能·神经网络·量子计算·图像分类·特征选择·“五岳杯”量子计算挑战赛·相干光量子计算机
Juicedata1 小时前
JuiceFS v1.3-Beta2:集成 Apache Ranger,实现更精细化的权限控制
运维·人工智能·ai
emo了小猫2 小时前
Mybatis #{} 和 ${}区别,使用场景,LIKE模糊查询避免SQL注入
数据库·sql·mysql·mybatis
Work(沉淀版)3 小时前
DAY 40
人工智能·深度学习·机器学习
蓦然回首却已人去楼空4 小时前
Build a Large Language Model (From Scratch) 序章
人工智能·语言模型·自然语言处理
CM莫问4 小时前
<论文>(微软)WINA:用于加速大语言模型推理的权重感知神经元激活
人工智能·算法·语言模型·自然语言处理·大模型·推理加速
拾忆-eleven4 小时前
NLP学习路线图(二十六):自注意力机制
人工智能·深度学习