精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

OpenHarmony UiTest測試用例開發(fā)實(shí)踐

系統(tǒng) OpenHarmony
本文只是對UiTest接口做一個(gè)簡單的實(shí)踐,旨在讓開發(fā)者了解UiTest測試用例的開發(fā)流程以及部分接口介紹。

想了解更多關(guān)于開源的內(nèi)容,請?jiān)L問:

51CTO 開源基礎(chǔ)軟件社區(qū)

https://ost.51cto.com

前言

這篇文章主要對UiTest測試用例的開發(fā)做一個(gè)簡單的開發(fā)實(shí)踐。

概述

UiTest提供模擬UI操作的能力,供開發(fā)者在測試場景使用,主要支持如點(diǎn)擊、雙擊、長按、滑動(dòng)等UI操作能力。

UiTest主要包含以下幾個(gè)關(guān)鍵、常用的類:

  • On:提供控件特征描述能力,用于控件篩選匹配查找。
  • Component:代表UI界面上的指定控件,提供控件屬性獲取,控件點(diǎn)擊,滑動(dòng)查找,文本注入等能力。
  • Driver:入口類,提供控件匹配/查找,按鍵注入,坐標(biāo)點(diǎn)擊/滑動(dòng),截圖等能力。
  • UiWindow:入口類,提供窗口屬性獲取,窗口拖動(dòng)、調(diào)整窗口大小等能力。

開發(fā)步驟

打開應(yīng)用

了解OpenHarmony應(yīng)用工程結(jié)構(gòu)的同學(xué)應(yīng)該知道,每個(gè)模塊最終都會(huì)編譯成一個(gè)hap,例如我們最熟悉的entry模塊,而ohosTest模塊最終也會(huì)編譯成一個(gè)hap,并安裝在桌面上。

【小源筆記】第十期 | OpenHarmony UiTest測試用例開發(fā)實(shí)踐-開源基礎(chǔ)軟件社區(qū)

讀過上篇文章或者了解OpenHarmony應(yīng)用開發(fā)的同學(xué)也知道,這個(gè)hap默認(rèn)打開的是TestAbility中指定的頁面,而開發(fā)者如果想測試的是其他hap(例如筆者這里測試的是entry模塊編譯的hap),首先需要使用startAbility的方式進(jìn)行拉起。

it(BUNDLE + 'StartAbility_001', 0, async function (done) {
  console.info(TAG, BUNDLE + 'StartAbility_001 begin')
  try {
    await abilityDelegator.startAbility({
      bundleName: 'com.example.myapplication',
      abilityName: 'EntryAbility'
    })
    done()
  } catch (exception) {
    console.info(TAG, `StartAbility_001 exception = ${JSON.stringify(exception)}`)
    expect().assertFail()
  }
  console.info(TAG, BUNDLE + 'StartAbility_001 end')
})

創(chuàng)建Driver對象

Driver類作為UiTest測試框架的總?cè)肟冢谑褂每丶ヅ?查找,按鍵注入,坐標(biāo)點(diǎn)擊/滑動(dòng),截圖等能力之前,需要使用Driver.create()方法創(chuàng)建一個(gè)Driver對象。

let driver = Driver.create()

控件匹配、操作

On類提供了豐富的控件特征描述,可以指定某個(gè)控件的id、類型、文本內(nèi)容等條件進(jìn)行匹配,例如筆者這里分別給TextInput和Button組件設(shè)置了id,然后就可以使用ON.id()進(jìn)行條件匹配。

【小源筆記】第十期 | OpenHarmony UiTest測試用例開發(fā)實(shí)踐-開源基礎(chǔ)軟件社區(qū)

也可以同時(shí)指定目標(biāo)控制的id和type,例如:

ON.id('button').type('Button')

在查找目標(biāo)控件之前,可以使用斷言API斷言當(dāng)前界面是否存在滿足給出的目標(biāo)屬性的控件,如不滿足則會(huì)報(bào)錯(cuò)退出。

await driver.assertComponentExist(ON.id('textInput'))

在使用On類指定條件后,可以使用driver.findComponent()方法進(jìn)行控件匹配,匹配成功后返回符合條件的Component對象,然后就可以使用Component類提供的方法進(jìn)行點(diǎn)擊、滑動(dòng)、注入文本等操作。

let textInput = await driver.findComponent(ON.id('textInput'))
await textInput.inputText('OpenHarmony');

運(yùn)行效果

【小源筆記】第十期 | OpenHarmony UiTest測試用例開發(fā)實(shí)踐-開源基礎(chǔ)軟件社區(qū)

完整代碼

import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium'
import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'
import { Driver, ON } from '@ohos.UiTest'

const TAG = '[Sample_MyApplication]'
const BUNDLE = 'myApplication_'

const DELAY_TIME = 1000;

export default function abilityTest() {
  let driver = Driver.create()
  let abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator()
  describe('ActsAbilityTest', function () {
    /**
     * 打開應(yīng)用
     */
    it(BUNDLE + 'StartAbility_001', 0, async function (done) {
      console.info(TAG, BUNDLE + 'StartAbility_001 begin')
      try {
        await abilityDelegator.startAbility({
          bundleName: 'com.example.myapplication',
          abilityName: 'EntryAbility'
        })
        done()
      } catch (exception) {
        console.info(TAG, `StartAbility_001 exception = ${JSON.stringify(exception)}`)
        expect().assertFail()
      }
      console.info(TAG, BUNDLE + 'StartAbility_001 end')
    })

    it(BUNDLE + 'function_001', 0, async function () {
      console.info(TAG, BUNDLE + 'function_001 begin')
      await driver.delayMs(DELAY_TIME)
      // 向文本框控件中輸入文本
      await driver.assertComponentExist(ON.id('textInput'))
      let textInput = await driver.findComponent(ON.id('textInput'))
      await textInput.inputText('OpenHarmony');
      await driver.delayMs(DELAY_TIME)
      // 點(diǎn)擊按鈕
      await driver.assertComponentExist(ON.id('button'))
      let btn = await driver.findComponent(ON.id('button'))
      await btn.click();
      await driver.delayMs(DELAY_TIME)
      // 清空文本框控件的文本信息
      await textInput.clearText();
      console.info(TAG, BUNDLE + 'function_001 end')
    })
  })
}

常見問題

1、失敗日志有“execute timeout 15000ms”錯(cuò)誤信息

問題分析

默認(rèn)測試執(zhí)行時(shí)長為15000ms,當(dāng)測試用例執(zhí)行超時(shí)就會(huì)自動(dòng)退出并報(bào)該錯(cuò)誤。

解決方法

在如下位置修改執(zhí)行超時(shí)時(shí)長。

【小源筆記】第十期 | OpenHarmony UiTest測試用例開發(fā)實(shí)踐-開源基礎(chǔ)軟件社區(qū)

2、失敗日志有“uitest-api dose not allow calling concurrently”錯(cuò)誤信息

問題分析

可能為報(bào)錯(cuò)位置前面調(diào)用的異步接口沒有使用await調(diào)用,或者并行執(zhí)行多個(gè)測試用例,導(dǎo)致前面的API沒有執(zhí)行完,就調(diào)用了新的API。

解決方法

1.檢查用例實(shí)現(xiàn),異步接口增加await調(diào)用。

2.避免多進(jìn)程執(zhí)行UI的測試用例。

結(jié)語

本文只是對UiTest接口做一個(gè)簡單的實(shí)踐,旨在讓開發(fā)者了解UiTest測試用例的開發(fā)流程以及部分接口介紹。UiTest除此之外還提供更加強(qiáng)大、更加復(fù)雜的能力,大家可以自行探索。

想了解更多關(guān)于開源的內(nèi)容,請?jiān)L問:

51CTO 開源基礎(chǔ)軟件社區(qū)

https://ost.51cto.com

責(zé)任編輯:jianghua 來源: 51CTO 開源基礎(chǔ)軟件社區(qū)
相關(guān)推薦

2021-12-22 10:19:47

鴻蒙HarmonyOS應(yīng)用

2021-03-04 15:43:29

前端測試工具開發(fā)

2011-05-16 15:18:18

測試用例

2011-06-08 17:23:12

測試用例

2011-05-16 15:09:20

測試用例

2022-05-10 14:54:13

驗(yàn)收標(biāo)準(zhǔn)測試用例

2011-04-18 10:46:39

接口測試

2011-07-04 18:06:52

測試用例

2011-12-23 17:03:29

性能測試用例設(shè)計(jì)

2011-05-16 14:54:12

測試用例

2020-08-25 08:03:59

測試Sharness結(jié)構(gòu)

2022-01-19 17:48:57

測試用例開發(fā)

2022-06-13 09:00:00

Selenium測試Web

2011-09-01 10:05:24

PhoneGap應(yīng)用程序測試

2023-09-04 17:48:06

2025-05-27 01:45:00

DeepSeekPython測試

2024-09-29 15:26:53

MySQLPython

2021-11-07 14:33:48

算法Pairwise功能

2011-06-03 16:58:03

測試用例

2011-11-02 09:54:37

測試
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

亚洲一区二区三区加勒比| 91精品国产91久久久久久久久| 羞羞的视频在线| 男人天堂亚洲天堂| 久久久久99精品一区| 国产精品永久免费视频| 久久这里只有精品免费| 亚洲精华一区二区三区| 337p亚洲精品色噜噜噜| 久久久999免费视频| 日本在线视频站| 不卡欧美aaaaa| 91精品久久久久| 天堂在线免费观看视频| 午夜国产一区二区| 亚洲男人天天操| 黄页网站在线看| 国产成人77亚洲精品www| 亚洲一区二区欧美日韩| 中文字幕一区二区三区最新| 精品无吗乱吗av国产爱色| 国产不卡视频在线播放| 国产在线视频2019最新视频| 色一情一乱一伦| 亚洲高清毛片| 久久夜色精品国产| 日韩福利在线视频| 欧美毛片免费观看| 精品国产污污免费网站入口 | 久久精品av麻豆的观看方式| 4388成人网| 伊人365影院| 综合在线视频| 久久亚洲影音av资源网| 色婷婷国产精品免| 欧美日韩高清| 亚洲女在线观看| 欧美一区二区三区成人精品| 国产精品主播在线观看| 欧美成人三级电影在线| 国产成人强伦免费视频网站| 91成人小视频| 337p亚洲精品色噜噜噜| 国产原创精品在线| 久久久加勒比| 欧美日韩一区在线观看| 性chinese极品按摩| 日韩精品影片| 欧美色图免费看| 亚洲综合欧美在线| 日韩成人综合网| 欧美人妇做爰xxxⅹ性高电影| 天美星空大象mv在线观看视频| 欧美色999| 在线观看一区日韩| jizz大全欧美jizzcom| 久久亚洲资源中文字| 欧美日韩国产a| 中文字幕第三区| 涩涩屋成人免费视频软件| 欧美大片在线观看| yjizz视频| 免费久久久久久久久| 亚洲人成亚洲人成在线观看| 中文字幕av久久爽一区| 色欧美自拍视频| 美女性感视频久久久| 强行糟蹋人妻hd中文| 激情综合在线| 奇门遁甲1982国语版免费观看高清 | 狠狠色伊人亚洲综合网站l| 国产亚洲综合色| 一本一道久久a久久综合精品| av网址在线| 黄色一区二区在线观看| 国产精品视频黄色| 国产精品一区二区三区www| 精品国产青草久久久久福利| 熟女少妇一区二区三区| 成人综合专区| 欧美日韩成人精品| 尤物视频免费观看| 国产自产v一区二区三区c| 国产女主播一区二区| 黄色毛片在线观看| 一区二区免费看| 99热成人精品热久久66| 国产日韩中文在线中文字幕| 亚洲精品久久久久久久久久久久| 色欲狠狠躁天天躁无码中文字幕| 欧美日韩免费| 国产精品极品美女粉嫩高清在线| www.污视频| 国产亚洲综合性久久久影院| av 日韩 人妻 黑人 综合 无码| 自拍网站在线观看| 欧美人妖巨大在线| 亚洲一区二区三区无码久久| 99久久影视| 国产91精品久久久久久| 国产色片在线观看| kk眼镜猥琐国模调教系列一区二区| 日韩精品久久一区二区三区| 欧美日韩在线视频免费观看| 在线观看视频一区| 亚洲乱妇老熟女爽到高潮的片 | 在线观看亚洲区| www.天天色| 国产精品综合二区| 日韩中文字幕一区| av中文在线资源库| 日韩一级完整毛片| 久久久精品成人| 亚洲欧美日韩国产综合精品二区 | 日韩有码中文字幕在线| 久久中文精品视频| 欧美在线视频精品| 久久综合九色综合97_久久久| 亚洲天堂第一区| 亚洲天堂一区二区| 亚洲国产欧美一区二区三区久久| 久久人妻无码aⅴ毛片a片app | 日本中文字幕在线不卡| 教室别恋欧美无删减版| 91超碰中文字幕久久精品| 精品久久在线观看| 亚洲同性同志一二三专区| www.xxx亚洲| 日韩mv欧美mv国产网站| 久久久久久久久久久国产| 国产丝袜在线视频| 成人欧美一区二区三区白人| 丁香婷婷激情网| 亚洲三级网页| 26uuu亚洲国产精品| 神马午夜在线观看| 五月婷婷激情综合网| 99久久久无码国产精品性波多| 911久久香蕉国产线看观看| 国产精品视频大全| av男人的天堂在线| 欧美综合欧美视频| 日韩不卡av在线| 美国毛片一区二区三区| 亚洲精品乱码久久久久久蜜桃91 | 最近高清中文在线字幕在线观看1| 精品免费日韩av| 国产中文字幕免费| www.亚洲人| 国产高清精品在线观看| 竹菊久久久久久久| 国产精品1234| 调教视频免费在线观看| 欧美日韩成人综合天天影院| 国产又粗又长又黄的视频| 久久精品国产免费看久久精品| 亚洲高清视频一区二区| 国产一区二区| 久久久久久成人精品| 全国男人的天堂网| 欧美色videos| 免费看黄色三级| 狠狠色丁香久久婷婷综合_中| 欧美 日韩 国产 在线观看| 日本少妇精品亚洲第一区| 久久久久国产精品免费| 嫩草研究院在线| 欧美亚洲国产一卡| 亚洲 欧美 变态 另类 综合| 国产91精品在线观看| 免费一级特黄特色毛片久久看| 亚洲人成网77777色在线播放| 国产精品美女久久| 巨大荫蒂视频欧美另类大| 日韩精品中文字幕一区| 久久免费激情视频| 国产精品福利一区| 精品久久久久久无码人妻| 亚洲一区二区毛片| 亚洲精品tv久久久久久久久| 日韩免费一级| 国产激情999| 直接在线观看的三级网址| 日韩精品欧美国产精品忘忧草| 最近中文字幕在线观看| 一区二区成人在线观看| 国产特级黄色录像| 国产精品一二三四| 成年人在线看片| 国产精品88久久久久久| 国产在线一区二区三区四区| 欧洲亚洲精品| 91精品国产高清| 成人a在线视频免费观看| 日韩精品视频中文在线观看| 中文区中文字幕免费看| 亚洲午夜激情av| 中文字幕乱码av| 91视频xxxx| 深夜福利网站在线观看| 热久久国产精品| 青娱乐自拍偷拍| 51精产品一区一区三区| 日韩国产一区久久| 国产无遮挡裸体免费久久| 国产区亚洲区欧美区| 性欧美18xxxhd| 欧美另类在线观看| 日本中文字幕电影在线免费观看 | 久久久久久黄| 分分操这里只有精品| 97精品97| 日韩三级电影| 亚洲香蕉视频| 激情一区二区三区| 91精品尤物| 91精品国产综合久久香蕉的用户体验| 欧美色网一区| 欧美亚洲成人免费| xxx.xxx欧美| 久久av中文字幕| 中文字幕在线视频区| 亚洲图片欧洲图片av| 日本ー区在线视频| 日韩电影中文字幕在线观看| 亚洲精品18p| 日韩一级欧美一级| 精品美女www爽爽爽视频| 91精品国产综合久久福利软件 | 国产电影精品久久禁18| 亚洲av无日韩毛片久久| 美女mm1313爽爽久久久蜜臀| 成人精品视频一区二区| 久久综合九色综合欧美狠狠| 国产亚洲综合视频| 国产日韩一区二区三区在线播放| 免费网站在线观看视频| 一区二区三区午夜视频| 黄色网zhan| 亚洲国产一区二区在线观看 | 欧美日韩免费观看一区三区| 国产天堂第一区| 欧美婷婷六月丁香综合色| 青青国产在线视频| 91久久久免费一区二区| 国产精品第6页| 欧美日韩中文字幕一区二区| 亚洲网站免费观看| 欧美日韩午夜在线视频| 91九色蝌蚪91por成人| 欧美久久久久免费| 国产绳艺sm调教室论坛| 精品日韩av一区二区| 风流少妇一区二区三区91| 亚洲精品电影网| 牛牛澡牛牛爽一区二区| 亚洲香蕉伊综合在人在线视看| 国产免费av在线| 久久五月情影视| 调教一区二区| 欧美亚洲另类制服自拍| 一呦二呦三呦精品国产| 国产区精品视频| 99久久香蕉| 免费国产一区| 色天天综合网| 久久成人福利视频| 丝袜亚洲另类丝袜在线| 538任你躁在线精品免费| 九一久久久久久| 69亚洲乱人伦| 国产亚洲欧洲一区高清在线观看| 美国美女黄色片| 亚洲综合激情另类小说区| 91video| 欧美精品少妇一区二区三区| 成人免费一级视频| 亚洲欧美制服综合另类| 黄网页在线观看| 97精品视频在线| 欧美成人毛片| 国产精品二区三区| 成人黄色av| 免费超爽大片黄| 欧美aaaaaa午夜精品| 69xxx免费视频| 国产精品视频线看| 日韩精品成人一区| 欧美日韩综合色| 三级无遮挡在线观看| 日韩有码在线观看| 涩涩涩视频在线观看| 成人自拍性视频| 精品一区毛片| 无码人妻少妇伦在线电影| 美腿丝袜在线亚洲一区| 国产真实乱人偷精品| 国产精品福利av| 免费黄色av片| 亚洲成人亚洲激情| 日本福利在线| 日本一区二区在线免费播放| 中文字幕亚洲在线观看| 亚洲国产精品久久久久久女王| 亚洲精品婷婷| 杨幂一区二区国产精品| 国产精品三级视频| 五月婷婷亚洲综合| 欧美α欧美αv大片| 在线播放日本| 热99久久精品| 精品成人自拍视频| 丁香色欲久久久久久综合网| 久久精品国产亚洲一区二区三区| 在线观看福利片| 亚洲v精品v日韩v欧美v专区| a在线观看免费| 日韩在线视频播放| 日本肉肉一区| 日韩av大全| 久久久久在线| 中文字幕狠狠干| 精品高清美女精品国产区| wwwxxxx国产| 久久亚洲私人国产精品va| 激情中国色综合| 亚洲成人18| 欧美aaaaa成人免费观看视频| 亚洲久久久久久久| 色中色一区二区| 欧美男男激情freegay| 2019中文字幕全在线观看| 美女视频亚洲色图| 欧美黑人经典片免费观看| 成人激情动漫在线观看| 国产亚洲自拍av| 精品国产百合女同互慰| 少女频道在线观看免费播放电视剧| 91精品视频在线播放| 99精品综合| 看看黄色一级片| 综合久久综合久久| 国产黄色av网站| 欧美精品激情视频| 青青一区二区| 国产精品欧美激情在线观看| 久久夜色精品国产噜噜av| 亚洲婷婷综合网| 中文日韩电影网站| 亚洲18在线| 激情视频小说图片| 国产suv精品一区二区6| 国产在线视频第一页| 亚洲精品av在线播放| 另类激情视频| 一区二区三区欧美在线| 国产一区二区中文字幕| 国产无套在线观看| 亚洲美女av在线| 91精品店在线| 4444亚洲人成无码网在线观看| jlzzjlzz亚洲日本少妇| 91丝袜一区二区三区| 在线观看国产精品91| 久久综合给合| 国产精品专区在线| 久久精品一区二区三区不卡| 中文字字幕在线观看| 久久九九免费视频| 久久综合五月婷婷| 亚洲少妇久久久| 一个色在线综合| 日本成人一区二区三区| 成人女保姆的销魂服务| 激情久久久久久久| 国产高清一区二区三区四区| 91精品国产91热久久久做人人| wwww在线观看免费视频| 任我爽在线视频精品一| 国产一区二区免费视频| yjizz国产| 久久精品国产亚洲7777| 看全色黄大色大片免费久久久| 日本在线观看免费视频| 亚洲一本大道在线| 成人av一区| 国产原创精品| 狠狠色丁香久久婷婷综| 日韩人妻精品中文字幕| 欧美大片va欧美在线播放| 免费av一区二区三区四区| 91精产国品一二三产区别沈先生| 欧美日韩亚洲激情| 中文在线手机av| 日韩三级电影免费观看| 国产91精品在线观看| 夜夜躁狠狠躁日日躁av| 97碰在线观看| 欧美精品18| 九九热久久免费视频|