当前位置: 首页 > news >正文

使用DevEco Testing快速创建HarmonyOS5单元测试

1.测试环境准备

  • 确保已安装DevEco Studio 5.0+
  • 在module的build.gradle添加依赖:
dependencies {testImplementation 'org.junit.jupiter:junit-jupiter:5.8.2'ohosTestImplementation 'com.huawei.ohos.testkit:runner:1.0.0.200'
}

2.创建测试类(示例测试计算器功能)


import { describe, it, expect } from '@ohos/hypium'
import Calculator from '../src/main/ets/Calculator'describe('CalculatorTest', () => {it('testAdd_shouldReturn4_when2Plus2', () => {let calc = new Calculator()expect(calc.add(2, 2)).assertEqual(4)})it('testDivide_shouldThrowError_whenDivideByZero', () => {let calc = new Calculator()expect(() => calc.divide(5, 0)).toThrow()})
})

该测试用例包含正常运算和异常场景验证

3.配置测试运行器

<?xml version="1.0" encoding="UTF-8"?>
<configuration><target name="Phone" type="device"><parameter key="deviceType" value="phone"/></target><coverage enabled="true"/><timeout value="60000"/>
</configuration>

支持设备类型选择和代码覆盖率统计

4.执行测试(三种方式任选):

  • 右键测试类选择"Run 'CalculatorTest'"
  • 命令行执行:hdc shell aa test -b your.bundle.name
  • 持续集成:配置TestKit到Jenkins流水线

5.查看测试报告:
测试完成后自动生成HTML报告,路径为:
/build/reports/tests/deviceTest/index.html

关键技巧:

  1. 使用@BeforeEach/@AfterEach处理测试前置/后置操作
  2. 通过@ParameterizedTest实现参数化测试
  3. 对UI组件使用@UiTest注解
  4. 模拟对象推荐使用ohos.mock()方法

    相关文章:

  1. 从源码角度了解Elasticsaerch(分布式协调排序、深分页问题)
  2. 【Java】脱离 JVM 约束 GraalVM + Liberica NIK + Spring + Docker 将 Java 编译为平台二进制可执行文件
  3. 亚马逊深度整合全食超市,重塑全球跨境电商与生鲜零售格局
  4. FPGA基础 -- Verilog语言要素之值集合
  5. CentOS7安装MySQL8.0.42
  6. 展开说说Android之Retrofit详解_使用篇
  7. 深度解析MySQL中的Join算法:原理、实现与优化
  8. 如何在 Windows 上打造 macOS 式快速查看体验?
  9. 2025最新1000+道Java面试题+答案整理(附JVM/MySQL/Spring/Redis)
  10. 136.在 Vue3 中使用 OpenLayers 实现 GroupLayer 的添加、删除、显示、隐藏
  11. P2C (Point-to-Curve) 算法深度解析
  12. 传统的提示词优化中,损失函数有哪些
  13. iOS即时通讯发送图片消息内存暴涨优化
  14. 10.C S编程错误分析
  15. MySQL 自增主键 ID 设置为 0有坑
  16. 二叉树的最大深度题解
  17. Apache Kafka Connect任意文件读取漏洞(CVE-2025-27817)
  18. AWS Config:概述、优势以及如何开始?
  19. Jmeter的三种参数化方式详解
  20. 【WPF】WPF 中 `DisplayMemberPath` 与 `SelectedValuePath` 的深入理解与实战应用
  21. 大连网站排名/互动营销是什么意思
  22. 便宜虚拟主机做网站备份/拼多多seo搜索优化
  23. 我的网站360搜索被做跳转/杭州百度seo
  24. 做网站买空间用共享ip/太原seo网络优化招聘网
  25. 网页制作与网站建设初学者必看教程/如何拿高权重网站外链进行互换?
  26. 有没有什么 网站能够做试卷/百度推广开户代理商