当前位置:首页>鸿蒙APP>认识一下鸿蒙应用测试的好助手:ohosTest

认识一下鸿蒙应用测试的好助手:ohosTest

  • 2026-11-10 14:33:14
认识一下鸿蒙应用测试的好助手:ohosTest
俗话说:不会测试的产品经理不是好开发。我们写完代码,交给测试同学后,总是会被提出各种各样的bug,那种感觉实在不好,如果能够在提交前先进行开发自测,尽可能在转测前消灭潜在的bug,岂不是很嗨。
手动点执行测试过程既慢,也容易出错,而且随便改个参数,都需要进行全面测试,很是麻烦。为了解决开发同学的痛点,华为的 DevEco Studio 提供了一个测试工具,就是标题提到的好助手:ohosTest。快来认识一下,交个朋友,后面好好地用起来。那么:

一、ohosTest 是谁?有什么职责呢?

ohosTest 是 DevEco Studio自动生成的一个测试模块,专门用来写和执行测试代码,他主要有两个作用:

  • 单元测试:不依赖真机或模拟器,帮助我们快速验证一个函数或方法逻辑是否正确。

  • 设备测试:在真机或模拟器上运行,测试页面跳转、点击事件、数据库等的真实能力是否OK。

二、ohosTest 的葫芦里面都有什么药?

当我们新建一个app工程时,可以在entry 目录下看到 ohosTest 文件夹,结构大致如下:

其中文件和文件夹及其作用如下表:

文件 / 目录
作用
ets/test/
存放所有测试用例文件,文件名必须以 .test.ets 结尾
Ability.test.ets
示例文件,演示如何测试 Ability 生命周期等
module.json5
测试模块的配置文件,里面会声明 "type": "test"

💡说明:我们也可以自己创建新的 .test.ets 文件,来组织不同功能的测试。

三、牛刀小试: 体验一下效果

我们写了一个简单的计算器小工具,很自然的里面有加法计算,于是我们写了一个函数add,用来计算两个数的和:

// 文件位置:entry/src/main/ets/utils/Calculator.etsexport class Calculator {  add(a: number, b: number): number {    return a + b  }}

1. 编写单元测试:

在ohosTest/ets/test/目录下新建一个文件:Calculator.test.ets,代码如下:

import { describe, it, expect } from '@ohos/hypium'import { Calculator } from '../../../main/ets/utils/Calculator'export default function calculatorTest() {  describe('Calculator_add_test', () => {    it('1 + 2 应该等于 3', Level.LEVEL3, () => {      let calc = new Calculator()      let result = calc.add(1, 2)      expect(result).assertEqual(3)    })    it('负数加法测试:(-1) + (-2) = -3', Level.LEVEL3, () => {      let calc = new Calculator()      let result = calc.add(-1, -2)      expect(result).assertEqual(-3)    })  })}

进行了正负数的加法计算的测试。

其中几个术语稍微解释下:

  • describe:一组相关的测试用例,第一个参数是描述文字。

  • it:一条单独的测试用例。

  • expect(...).assertEqual(...):断言实际运行测试用例结果是否符合预期。

2. 运行单元测试:

按照教程上的描述,在DevEco Studio 中,找到并用右键点击cal.test.ets 文件,选择run即可。但是我右键的时候,并没有显示“运行/run"菜单。我偷了个懒,没有立即解决该问题,而是把测试代码copy到Ability.test.ets这个文件中,运行这个文件进行测试。

在运行测试文件的过程中,也遇到几个问题,但最终顺利执行成功,测试结果显示如下图:
特别鸣谢:感谢DevEco Studio自带的AI工具CodeGenie,解决问题离不开他的帮助!

关于执行过程中遇到的几个小问题及其解决办法,将会在后文中持续总结,欢迎关注!

最新文章

随机文章