赞
踩
DevEco Studio IDE
在配置环境的时候请参考:搭建DevEco Studio环境介绍、DecEvo签名应用。
HJSUnit测试框架支持使用javascript语言编写测试用例,对鸿蒙APP(特指基于ACE框架使用javascript语言开发的APP,包含轻量化鸿蒙APP以及双框架下的鸿蒙APP)进行自动化测试,测试框架的能力包括:
框架支持的测试包为.hap,即用户在鸿蒙源码环境或者IDE下将测试代码编译打包成标准的hap包,然后在安装到设备上运行测试用例。测试用例的执行使用aa命令行工具,支持传入多种参数来实现用例的筛选,如执行单条用例、执行特定测试类型的用例等。
Positive:HJSUnit 测试命令行格式:hdc shell aa start -p${BUILDE_NAME} -n
ohos.testkit.runner.EntryAbility -s unittest ohos.testkit.runner.Runner
aa 命令将测试hap包拉起,并启动测试执行。测试框架、测试用例和被测对象共进程运行。runner还负责测试用例执行结果从应用进程回传到aa命令控制台并打印出来。
具体的执行流程参考:OpenHarmony-L2操作总结_@_南先生的博客-CSDN博客
关键步骤描述:
1.首先在IDE里的导航栏点击build->Build Hap->Build Hap这里,将会编译出一个hap包
2.编译出来的hap将会存放在
3.程序将会进入到index.js ->List.unit.js->具体的用例
测试用例采用jasmine的标准语法,describe代表一个测试套,it代表一条用例,describe支持多层嵌套。
- import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from 'deccjsunit/index'
- import systemparameter from '@ohos.systemParameter'
- describe('SystemParameterTest', function () {
- console.info('SystemParameterTest start################################start');
-
- /**
- * @tc.number SUB_STARTUP_JS_SYSTEM_PARAMETER_0100
- * @tc.name testSet0100
- * @tc.desc Set the value for the given key with parameter callback.
- */
- it('system_parameter_test_0100', 0, async function (done) {
- console.info('system_parameter_test_0100 start');
- let ret = false;
- try {
- systemparameter.set('hw_sc.build.os.version', '10.20.30.4', function (date, err) {
- if (err == undefined) {
- ret = true;
- console.info('system_parameter_test_0100 set callback hw_sc.build.os.version value success :'
- + data);
- } else {
- console.info('system_parameter_test_0100 set callback hw_sc.build.os.version value err:'
- + err.code);
- }
- });
- done();
- } catch (e) {
- console.info('system_parameter_test_0100 set callback hw_sc.build.os.version unexpect err:' + e);
- }
- setTimeout(function(){
- expect(ret).assertTrue();
- }, '1000');
- console.info('system_parameter_test_0100 : end');
- })
-
- }
关于在编写js用例时所要用到的callback和promise的总结:JS的callback和promise的总结
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。