鸿蒙应用怎么测试?这个工具包请收藏!

文摘   2024-10-23 12:02   重庆  

整理|TesterHome社区

作者|不知名小编


在今年1月中旬,华为刚宣布HarmonyOS NEXT鸿蒙星河版面向开发者开放申请,这一版本鸿蒙系统也被称为“纯血鸿蒙”。当时,华为宣布首批200多家应用厂商正在加速开发鸿蒙原生应用,不到3个月时间,加入鸿蒙生态的原生应用数量便增长近20倍。


可以看出,全国多地正在密集推进鸿蒙化进程。小编整理了HarmonyOS开发、测试相关的一个“工具包”,供大家参考。




鸿蒙开发套件


华为为HarmonyOS 鸿蒙开发者提供包括HarmonyOS SDK、DevEco Studio、DevEco Service等开发、调试、测试功能的服务,让开发效率进一步提升,同时享受顺滑的开发体验。


面向鸿蒙生态的声明式开发套件,包含了鸿蒙生态应用从设计、开发、测试、上架所需的关键技术和产品。(鸿蒙指华为终端鸿蒙智能设备操作系统软件)


面向鸿蒙生态的声明式开发套件包括:


- AppGallery Connect


(简称AGC)致力于为应用的创意、开发、分发、运营、经营各环节提供一站式服务,构建全场景智慧化的应用生态体验。

https://developer.huawei.com/consumer/cn/service/josp/agc/index.html#/


- DevEco Studio


面向全场景多设备,提供一站式的分布式应用开发平台,支持分布式多端开发、分布式多端调测、多端模拟仿真,提供了代码智能编辑、低代码开发、双向预览等功能,以及轻量构建工具DevEco Hvigor 、本地模拟器,持续提升应用及服务开发效率。

https://developer.huawei.com/consumer/cn/deveco-studio/


- DevEco Testing


提供 HarmonyOS 应用和设备测试解决方案,助力开发者全面高效测试。

https://devecotesting.huawei.com/userPortal/

https://developer.huawei.com/consumer/cn/next/deveco-testing/


- HarmonyOS Design


是鸿蒙生态不断更新的设计资源库,包含图标、色彩、文字、音效等丰富的资源,并且提供多种效率组件和界面模板,帮助快速准确的设计HarmonyOS 应用。

https://developer.huawei.com/consumer/cn/design/


- ArkTS


是鸿蒙生态的应用开发语言。它在保持TypeScript(简称TS)基本语法风格的基础上,对TS的动态类型特性施加更严格的约束,引入静态类型。同时,提供了声明式UI、状态管理等相应的能力,让开发者可以以更简洁、更自然的方式开发高性能应用。

https://developer.huawei.com/consumer/cn/arkts/


- ArkUI


是一套构建分布式应用界面的声明式UI开发框架。它使用极简的UI信息语法、丰富的UI组件、以及实时界面预览工具,帮助开发者提升HarmonyOS应用界面开发效率。

https://developer.huawei.com/consumer/cn/arkui/


- ArkCompiler


是华为自研的统一编程平台,包含编译器、工具链、运行时等关键部件,支持高级语言在多种芯片平台的编译与运行,并支撑应用和服务运行在手机、个人电脑、平板、电视、汽车和智能穿戴等多种设备上的需求。

https://developer.huawei.com/consumer/cn/arkcompiler/




自动化测试框架使用指南



为支撑HarmonyOS操作系统的自动化测试活动开展,华为提供了支持JS/TS语言的单元及UI测试框架,支持开发者针对应用接口进行单元测试,并且可基于UI操作进行UI自动化脚本的编写。


HarmonyOS自动化测试框架arkxtest,作为HarmonyOS工具集的重要组成部分,提供了HarmonyOS自动化脚本编写和运行的基础能力。编写方面提供了一系列支持测试脚本编写的API,包括了基础流程API、断言API以及UI操作相关的API,运行方面提供了识别测试脚本、调度执行测试脚本以及汇总测试脚本执行结果的能力。


实现原理


框架重要分为两大部分:单元测试框架和UI测试框架。


  • 单元测试框架


单元测试框架是测试框架的基础底座,提供了最基本的用例识别、调度、执行及结果汇总的能力。主要功能如下图所示:


单元测试脚本的基础运行流程如下图所示,依赖aa test命令作为执行入口,该命令可具体参考。


  • UI测试框架


UI测试框架主要对外提供了UiTest API供开发人员在对应测试场景调用,而其脚本的运行基础还是上面提到的单元测试框架。


UI测试框架的主要功能如下图所示:

约束与限制


UI测试框架的能力在HarmonyOS 3.0 release版本之后方可使用,历史版本不支持使用。


单元测试框架的部分能力与其版本有关,具体能力与版本匹配信息可见代码仓中的文档介绍。


有关环境准备、新建测试脚本、编写单元测试脚本、编写UI测试脚本、执行测试脚本、查看测试结果、常见问题等内容...


阅读:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/arkxtest-guidelines-0000001478061625-V3




HarmonyOS自动化测试框架—Hypium


应用开发过程中,要确保应用的功能和界面能满足预期,往往需要通过测试来验证。为此,研发了一套新的自动化测试框架Hypium,它支持以插件形式集成到DevEco Studio中,让开发者在应用开发的过程中可以快速编写和执行测试用例,实现应用的高效验证。


“Hypium”是“Hyper Automation + ium”的组合词,“Hyper Automation”表示超级自动化, “ium”意指稳定、可靠的测试框架能力底座。从取名含义可以看出,我们想要为开发者打造一个以超级自动化测试为理想目标、且稳定可靠的测试框架。


自动化测试框架Hypium以插件形式集成到DevEco Studio中。开发者创建工程后,DevEco Studio会自动生成测试目录、测试类和测试用例模板等,如图1所示。开发者无需从零开始,让测试更加简单、高效。



应用程序的自动化测试,从应用场景上主要分为两类:一类主要测试程序的内部功能逻辑,聚焦在测试程序内的函数接口,用于开发人员自测试使用;另一类主要是所见即所得的界面测试,操作页面并检查页面控件是否符合预期的端到端的测试,用于测试人员覆盖全路径的验证测试。


针对上述两种应用场景,自动化测试框架Hypium推出了单元测试框架和UI测试框架两个子框架。


● 单元测试框架(HJsUnit):提供单元测试用例编写的基础接口,以及用于测试系统或应用的接口。支持开发者编写和执行单元测试用例,并且生成对应的测试报告。


● UI测试框架(HUiTest):通过简洁易用的API提供查找和操作界面控件的能力,支持开发基于界面操作的自动化测试脚本。


Hypium的单元测试框架和UI测试框架的详细介绍,点击这里:《HarmonyOS自动化测试框架—Hypium》《Hypium框架使能ArkTS应用高效测试》自动化测试效率提升30%如何达成




HarmonyOS专项测试


随着信息技术的高速发展,移动应用与人们生活日益紧密,面向各类场景的应用层出不穷,什么样的应用更受用户青睐呢?在满足用户功能需求之上,一个好的应用要能运行稳定、流畅不卡顿、占用内存小、安全等级高,此外,最好还能提供更多创新便捷的附加能力。


为了匹配用户的期望,应用开发者们自开发阶段到上架之前,均在持续进行应用测试。在每个测试阶段,开发者们都有不同的测试目标。

HarmonyOS应用测试工程

在开发自测阶段,需要保障应用基本可用;功能测试阶段,需要应用功能完整,实现用户目的;在专项测试中,则以为用户提供更好的体验为目标,通过多维度测试(如安全、性能功耗、稳定性等),持续跟踪应用质量指标;直至最后满足HarmonyOS应用测试标准,方可上架发布。

在这个过程中,专项测试是否充分,各项领域是否全面,决定了应用在测试验收环节能否通过各项检测指标和高质量的交付,最终成为用户喜爱的应用。


为什么会有专项测试?


对于普通应用开发团队而言,开展应用专项的测试,往往存在诸多难点。不同的专项领域测试,环境要求不同,测试工程师需要具备相应的测试技能也不同,这意味着测试执行需要投入较大的成本。测试执行结束后,对测试数据进一步挖掘,深度分析等,同样也非常依赖测试工程师的专业度。


DevEco Testing让应用专项测试,变得更简单、更专业、更智能!通过将专业测试服务化,既省去了环境搭建过程,也降低了测试门槛,专项测试不再局限于测试人员,开发人员也可以将应用测试前置,在开发阶段就能进行自测,随时开发随时测试,最终实现测试前移的目的。

DevEco Testing能力图



除了稳定性测试外,DevEco Testing还提供了应用拨测、性能测试、安全测试、应用标准测试等其他应用专项测试能力,为开发自测试-集成测试-上架测试提供了一站式测试服务,帮助应用团队轻松应对应用测试全场景,助力打造HarmonyOS高品质应用。详细阅读:玩转HarmonyOS专项测试



1.自动化测试框架|我们为什么抛弃Selenium选择Playwright

2.十个AI驱动的软件测试自动化工具,你尝试过吗?

3.已开源!一款支持HarmonyOS NEXT系统的UI自动化框架hmdriver2发布

4.测试团队FastGPT实战,解锁AI大模型知识库搭建秘籍

5.MTSC2024上海大会,现场录播视频

6.AI测试|自己搭一个AI Agent玩玩


TesterHome社区
测试之家(TesterHome)由一线测试工程师发起和运营的测试技术社区,社区主旨是公益、开源、分享、落地,紧跟前沿技术趋势,致力于推进软件质量保障与安全,是软件质量保障领域的风向标。我们的理念:Coding Share Show Cool
 最新文章