日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenHarmony自動化測試框架開發(fā)指南

OpenHarmony技術(shù)社區(qū) ? 來源:OST開源開發(fā)者 ? 2023-05-15 09:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

OpenHarmony 自動化測試框架是 OpenHarmony 提供的支持 JS/TS 語言的單元及 UI 測試框架,支持開發(fā)者針對應(yīng)用接口或系統(tǒng)接口進(jìn)行單元測試,并且可基于 UI 操作進(jìn)行 UI 自動化腳本的編寫。

34d9b6f2-f29d-11ed-90ce-dac502259ad0.png

OpenHarmony 自動化測試框架重要分為兩大部分:單元測試框架和 UI 測試框架。

單元測試框架是測試框架的基礎(chǔ)底座,提供了最基本的用例識別、調(diào)度、執(zhí)行及結(jié)果匯總的能力。

UI 測試框架主要調(diào)用提供的 UiTest API 對不同測試場景進(jìn)行測試,而其腳本的運(yùn)行基礎(chǔ)還是單元測試框架。

https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-uitest.md

從代碼的角度體現(xiàn)為,每個(gè) OpenHarmony 工程在新建時(shí)都會提供一個(gè) ohosTest 模塊,包含基礎(chǔ)的單元測試運(yùn)行腳本。

如下圖所示:

352092b6-f29d-11ed-90ce-dac502259ad0.png

其中各文件間的大致關(guān)系如下圖所示:

3534f5a8-f29d-11ed-90ce-dac502259ad0.png

單元測試腳本的基礎(chǔ)運(yùn)行流程如下圖所示,依賴 aa test 命令作為執(zhí)行入口(可結(jié)合上述代碼中的關(guān)系圖進(jìn)行對比)。

3577563c-f29d-11ed-90ce-dac502259ad0.png

開發(fā)步驟

①新建測試腳本

在工程目錄下打開待測試模塊下的 ets 文件,將光標(biāo)置于代碼中任意位置,單擊右鍵→Show Context Actions→Create Ohos Test 或快捷鍵Alt+enter→ Create Ohos Test 創(chuàng)建測試類。

如下圖所示:

35903850-f29d-11ed-90ce-dac502259ad0.png

35be1720-f29d-11ed-90ce-dac502259ad0.png

完成后自動生成一個(gè)測試腳本:

35e1e470-f29d-11ed-90ce-dac502259ad0.png

編寫單元測試腳本

代碼如下:

import{describe,beforeAll,beforeEach,afterEach,afterAll,it,expect}from'@ohos/hypium'
importabilityDelegatorRegistryfrom'@ohos.application.abilityDelegatorRegistry'

constdelegator=abilityDelegatorRegistry.getAbilityDelegator()
exportdefaultfunctionabilityTest(){
describe('ActsAbilityTest',function(){
it('testUiExample',0,asyncfunction(done){
console.info("uitest:TestUiExamplebegin");
//starttestedability
awaitdelegator.executeShellCommand('aastart-bcom.ohos.uitest-aMainAbility').then(result=>{
console.info('Uitest,startabilityfinished:'+result)
}).catch(err=>{
console.info('Uitest,startabilityfailed:'+err)
})
awaitsleep(1000);
//checktopdisplayability
awaitdelegator.getCurrentTopAbility().then((Ability)=>{
console.info("gettopability");
expect(Ability.context.abilityInfo.name).assertEqual('MainAbility');
})
done();
})

functionsleep(time){
returnnewPromise((resolve)=>setTimeout(resolve,time));
}
})
}

單元測試腳本需要包含如下基本元素:

依賴導(dǎo)包,以便使用依賴的測試接口。

測試代碼編寫,主要編寫測試代碼的相關(guān)邏輯,如接口調(diào)用等。

斷言接口調(diào)用,設(shè)置測試代碼中的檢查點(diǎn),如無檢查點(diǎn),則不可認(rèn)為一個(gè)完整的測試腳本。

編寫UI 測試腳本

UI 測試腳本是在單元測試框架的基礎(chǔ)上編寫,主要就是增加了 UI 測試框架提供的接口調(diào)用,實(shí)現(xiàn)對應(yīng)的測試邏輯。

下面的示例代碼是在上面的測試腳本基礎(chǔ)上增量編寫,首先需要增加依賴導(dǎo)包,如下示例代碼所示:

import{Driver,ON,Component,MatchPattern}from'@ohos.uitest'
然后是具體測試代碼編寫,場景較為簡單,就是在啟動的應(yīng)用頁面上進(jìn)行點(diǎn)擊操作,然后增加檢查點(diǎn)檢查用例。
exportdefaultfunctionabilityTest(){
describe('ActsAbilityTest',function(){
it('testUiExample',0,asyncfunction(done){
console.info("uitest:TestUiExamplebegin");
//starttestedability
awaitdelegator.executeShellCommand('aastart-bcom.ohos.uitest-aMainAbility').then(result=>{
console.info('Uitest,startabilityfinished:'+result)
}).catch(err=>{
console.info('Uitest,startabilityfailed:'+err)
})
awaitsleep(1000);
//checktopdisplayability
awaitdelegator.getCurrentTopAbility().then((Ability)=>{
console.info("gettopability");
expect(Ability.context.abilityInfo.name).assertEqual('MainAbility');
})
//uitestcode
//initdriver
vardriver=awaitDriver.create();
awaitdriver.delayMs(1000);
//findbuttonbytext'Next'
varbutton=awaitdriver.findComponent(ON.text('Next'));
//clickbutton
awaitbutton.click();
awaitdriver.delayMs(1000);
//checktext
awaitdriver.assertComponentExist(ON.text('afterclick'));
awaitdriver.pressBack();
done();
})

functionsleep(time){
returnnewPromise((resolve)=>setTimeout(resolve,time));
}
})
}

執(zhí)行測試腳本

執(zhí)行測試腳本可以直接在 DevEco Studio 中通過點(diǎn)擊按鈕執(zhí)行,當(dāng)前支持以下執(zhí)行方式: ①測試包級別執(zhí)行即執(zhí)行測試包內(nèi)的全部用例。 ②測試套級別執(zhí)行即執(zhí)行 describe 方法中定義的全部測試用例。

③測試方法級別執(zhí)行即執(zhí)行指定 it 方法也就是單條測試用例。

360e922c-f29d-11ed-90ce-dac502259ad0.png

其中測試包內(nèi)的全部測試用例運(yùn)行任務(wù)可按如下步驟創(chuàng)建: 36584124-f29d-11ed-90ce-dac502259ad0.png367ab18c-f29d-11ed-90ce-dac502259ad0.png

36a5fd4c-f29d-11ed-90ce-dac502259ad0.png

查看測試結(jié)果

測試執(zhí)行完畢后可直接在 DevEco Studio 中查看測試結(jié)果,如下圖示例所示:

36bdfd52-f29d-11ed-90ce-dac502259ad0.png

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 模塊
    +關(guān)注

    關(guān)注

    7

    文章

    2849

    瀏覽量

    53460
  • 自動化測試
    +關(guān)注

    關(guān)注

    0

    文章

    273

    瀏覽量

    27849
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    9603

    瀏覽量

    157676
  • OpenHarmony
    +關(guān)注

    關(guān)注

    33

    文章

    3977

    瀏覽量

    21377

原文標(biāo)題:OpenHarmony自動化測試框架開發(fā)指南

文章出處:【微信號:gh_834c4b3d87fe,微信公眾號:OpenHarmony技術(shù)社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    鴻蒙OS開發(fā)實(shí)戰(zhàn):【自動化測試框架】使用指南

    為支撐HarmonyOS操作系統(tǒng)的自動化測試活動開展,我們提供了支持JS/TS語言的單元及UI測試框架,支持開發(fā)者針對應(yīng)用接口進(jìn)行單元
    的頭像 發(fā)表于 04-08 14:49 ?3012次閱讀
    鴻蒙OS<b class='flag-5'>開發(fā)</b>實(shí)戰(zhàn):【<b class='flag-5'>自動化</b><b class='flag-5'>測試</b><b class='flag-5'>框架</b>】使用<b class='flag-5'>指南</b>

    OPhone自動化測試技術(shù)概述

    上可采用的幾種自動化測試技術(shù)進(jìn)行介紹,并對每種技術(shù)的優(yōu)缺點(diǎn)做簡要的總結(jié)。OPhone臺除了為應(yīng)用程序開發(fā)提供豐富的API外,也為開展自動化測試
    發(fā)表于 05-06 08:58

    基于LAN的自動化測試系統(tǒng)開放指南

    自動化測試開發(fā)指南
    發(fā)表于 09-02 12:34

    自動化測試框架思想和構(gòu)建

    自動化測試一般是指軟件測試自動化,軟件測試就是在預(yù)設(shè)條件下運(yùn)行系統(tǒng)或應(yīng)用程序,評估運(yùn)行結(jié)果,預(yù)先條件應(yīng)包括正常條件和異常條件。本文介紹的是
    發(fā)表于 07-18 06:52

    HarmonyOS自動化測試框架—Hypium

    ??,點(diǎn)擊鏈接查看更多技術(shù)內(nèi)容。 應(yīng)用開發(fā)過程中,要確保應(yīng)用的功能和界面能滿足預(yù)期,往往需要通過測試來驗(yàn)證。為此,我們研發(fā)了一套新的自動化測試框架
    發(fā)表于 08-10 17:13

    OpenHarmony AI框架開發(fā)指導(dǎo)

    一、概述 1、功能簡介 AI業(yè)務(wù)子系統(tǒng)是OpenHarmony提供原生的分布式AI能力的子系統(tǒng)。AI業(yè)務(wù)子系統(tǒng)提供了統(tǒng)一的AI引擎框架,實(shí)現(xiàn)算法能力快速插件集成。 AI引擎框架主要
    發(fā)表于 09-19 18:54

    HamronyOS自動化測試框架使用指南

    概述 為支撐 HarmonyOS 操作系統(tǒng)的自動化測試活動開展,我們提供了支持 JS/TS 語言的單元及 UI 測試框架,支持開發(fā)者針對應(yīng)用
    發(fā)表于 12-19 10:26

    常用軟件測試自動化框架

    自動化測試框架無疑是企業(yè)實(shí)施自動化測試的一個(gè)必然的發(fā)展方向,它對于產(chǎn)生成功的測試
    發(fā)表于 04-21 11:39 ?5483次閱讀

    全面提升自動化測試,NI TestStand 2012新模塊框架

    NI TestStand 2012采用全新的模塊框架,能夠簡化自動化測試開發(fā)和報(bào)告生成。
    發(fā)表于 11-06 17:42 ?2229次閱讀

    基于Web的自動化測試框架的研究

    根據(jù)web系統(tǒng)測試的特點(diǎn),為提高軟件測試自動化腳本的可重用性,結(jié)合在實(shí)際項(xiàng)目中軟件自動化測試的實(shí)踐,提出基于Web的
    發(fā)表于 11-07 15:58 ?0次下載
    基于Web的<b class='flag-5'>自動化</b><b class='flag-5'>測試</b><b class='flag-5'>框架</b>的研究

    Python自動化測試框架有哪些?

    開發(fā)者萬分高興的是,開發(fā)自己的測試框架的日子終于結(jié)束了。以前,開發(fā)團(tuán)隊(duì)接手一個(gè)項(xiàng)目并開始開發(fā)時(shí)
    的頭像 發(fā)表于 07-28 09:06 ?5282次閱讀

    什么是自動化測試框架?

    這些優(yōu)勢可以是不同的形式,如易于編寫腳本、可伸縮性、模塊、可理解性、過程定義、可重用性、成本、維護(hù)等。因此,為了能夠獲得這些好處,建議開發(fā)人員使用一個(gè)或多個(gè)自動化測試
    的頭像 發(fā)表于 11-03 10:33 ?5195次閱讀

    JavaUI框架新增組件開發(fā)指南

    Java UI框架是HarmonyOS應(yīng)用開發(fā)中諸多開發(fā)者需要關(guān)注的重要內(nèi)容。近期,文檔君結(jié)合各位開發(fā)者反饋的聲音和改進(jìn)建議,對官網(wǎng)文檔的Java UI
    的頭像 發(fā)表于 09-28 10:04 ?3219次閱讀
    JavaUI<b class='flag-5'>框架</b>新增組件<b class='flag-5'>開發(fā)指南</b>

    自動化測試框架unittes詳解

    測試框架,不妨“軟為硬用”。這里就基于python的自動化測試框架unittest來實(shí)現(xiàn)一個(gè)簡單的自動
    的頭像 發(fā)表于 05-20 14:47 ?3962次閱讀

    什么是自動化測試框架

    自動化測試框架,即是應(yīng)用于自動化測試所用的框架。按照框架
    發(fā)表于 04-18 14:44 ?1719次閱讀
    北安市| 湖北省| 韶山市| 理塘县| 古蔺县| 酒泉市| 湘乡市| 济南市| 陆河县| 滨州市| 满城县| 奉节县| 沧源| 永春县| 吉木萨尔县| 北宁市| 天长市| 龙南县| 柳州市| 深州市| 勐海县| 木里| 永福县| 洛扎县| 噶尔县| 洪江市| 澎湖县| 乳山市| 德清县| 民勤县| 黑山县| 濮阳市| 江孜县| 汤阴县| 开原市| 沽源县| 西吉县| 缙云县| 福建省| 资兴市| 六盘水市|