色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

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

OpenHarmony技術社區(qū) ? 來源:OST開源開發(fā)者 ? 2023-05-15 09:35 ? 次閱讀

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

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

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

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

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

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

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

如下圖所示:

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

其中各文件間的大致關系如下圖所示:

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

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

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

開發(fā)步驟

①新建測試腳本

在工程目錄下打開待測試模塊下的 ets 文件,將光標置于代碼中任意位置,單擊右鍵→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

完成后自動生成一個測試腳本:

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));
}
})
}

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

依賴導包,以便使用依賴的測試接口。

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

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

編寫UI 測試腳本

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

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

import{Driver,ON,Component,MatchPattern}from'@ohos.uitest'
然后是具體測試代碼編寫,場景較為簡單,就是在啟動的應用頁面上進行點擊操作,然后增加檢查點檢查用例。
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 中通過點擊按鈕執(zhí)行,當前支持以下執(zhí)行方式: ①測試包級別執(zhí)行即執(zhí)行測試包內(nèi)的全部用例。 ②測試套級別執(zhí)行即執(zhí)行 describe 方法中定義的全部測試用例。

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

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

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

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

查看測試結果

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

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

審核編輯:湯梓紅

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

    關注

    7

    文章

    2769

    瀏覽量

    48870
  • 自動化測試
    +關注

    關注

    0

    文章

    222

    瀏覽量

    27162
  • 接口
    +關注

    關注

    33

    文章

    8866

    瀏覽量

    152903
  • OpenHarmony
    +關注

    關注

    26

    文章

    3802

    瀏覽量

    17717

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

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

收藏 0人收藏

    評論

    相關推薦

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

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

    OPhone自動化測試技術概述

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

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

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

    自動化測試框架思想和構建

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

    HarmonyOS自動化測試框架—Hypium

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

    OpenHarmony AI框架開發(fā)指

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

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

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

    常用軟件測試自動化框架

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

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

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

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

    根據(jù)web系統(tǒng)測試的特點,為提高軟件測試自動化腳本的可重用性,結合在實際項目中軟件自動化測試的實踐,提出基于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ā)自己的測試框架的日子終于結束了。以前,開發(fā)團隊接手一個項目并開始開發(fā)
    的頭像 發(fā)表于 07-28 09:06 ?4785次閱讀

    什么是自動化測試框架

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

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

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

    自動化測試框架unittes詳解

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

    什么是自動化測試框架

    自動化測試框架,即是應用于自動化測試所用的框架。按照框架
    發(fā)表于 04-18 14:44 ?1056次閱讀
    主站蜘蛛池模板: 国产品无码一区二区三区在线 | 野花韩国高清完整版在线 | 冰山高冷受被c到哭np双性 | 男女疯狂一边摸一边做羞羞视频 | 涩涩涩涩爱网站 | 日本老妇一级特黄aa大片 | 厨房玩朋友娇妻中文字幕 | 被老师按在办公桌吸奶头 | 少妇高潮惨叫久久久久久电影 | 欧美精品一区二区蜜臀亚洲 | 久久黄色录像 | 扒开老师大腿猛进AAA片邪恶 | 久久草这在线观看免费 | 在线 | 果冻国产传媒61国产免费 | yellow在线观看免费直播 | 欧美又粗又长又大AAAA片 | 中文字幕A片视频一区二区 中文字幕AV在线一二三区 | 日日日操操操 | 国产高清视频在线播放www色 | 国产AV无码成人黄网站免费 | 成人高清护士在线播放 | mxgs-877痉挛媚药按摩 | 黑人干肥婆 | 起碰免费公开97在线视频 | 久热人人综合人人九九精品视频 | 武侠古典久久亚洲精品 | 久久久GOGO无码啪啪艺术 | 在线看无码的免费网站 | 被窝伦理午夜电影网 | 俄罗斯女人Z0ZOZO | 国产亚洲精品AV片在线观看播放 | 色多多深夜福利免费观看 | 久久久久久久网 | 国产露脸无码A区久久 | 国产免费高清mv视频在线观看 | 永久adc视频年龄确认 | 性生生活大片又黄又 | 掀开奶罩边躁狠狠躁软学生 | 91欧美秘密入口 | 好爽胸大好深好多水 | 成人国内精品久久久久影院 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品