UiTest
UiTest提供模拟UI操作的能力,供开发者在测试场景使用,主要支持如点击、双击、长按、滑动等UI操作能力。
该模块提供以下功能:
- [By]:提供控件特征描述能力,用于控件筛选匹配查找。
- [UiComponent]:代表UI界面上的指定控件,提供控件属性获取,控件点击,滑动查找,文本注入等能力。
- [UiDriver]:入口类,提供控件匹配/查找,按键注入,坐标点击/滑动,截图等能能力。
说明:
开发前请熟悉鸿蒙开发指导文档:gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
点击或者复制转到。
本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
导入模块
import {UiDriver,BY,MatchPattern} from '@ohos.uitest'
By
UiTest框架通过By类提供了丰富的控件特征描述API,用以进行控件筛选来匹配/查找出目标控件。
By提供的API能力具有以下几个特点:
1、支持单属性匹配和多属性组合匹配,例如同时指定目标控件text和id。
2、控件属性支持多种匹配模式。
3、支持控件绝对定位,相对定位,可通过[By.isBefore]和[By.isAfter]等API限定邻近控件特征进行辅助定位。
By类提供的所有API均为同步接口,建议使用者通过静态构造器BY来链式创建By对象。
BY.text('123').type('button')
text
text(txt: string, pattern?: MatchPattern): By
指定目标控件文本属性,支持多种匹配模式,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
txt | string | 是 | 指定控件文本,用于匹配目标控件文本。 |
pattern | MatchPattern | 否 | 指定的文本匹配模式,默认为[EQUALS] |
返回值:
类型 | 说明 |
---|---|
By | 返回By对象自身 |
示例:
let by = BY.text('123') //使用静态构造器BY创建by对象,指定目标控件的text属性。
key
key(key: string): By
指定目标控件key值属性,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
key | string | 是 | 指定控件的Key值。 |
返回值:
类型 | 说明 |
---|---|
By | 返回By对象自身。 |
示例:
let by = BY.key('123') //使用静态构造器BY创建by对象,指定目标控件的key值属性。
id
id(id: number): By
指定目标控件id属性,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
id | number | 是 | 指定控件的id值。 |
返回值:
类型 | 说明 |
---|---|
By | 返回By对象自身。 |
示例:
let by = BY.id(123) //使用静态构造器BY创建by对象,指定目标控件的id属性。
type
type(tp: string): By
指定目标控件的控件类型属性,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
tp | string | 是 | 指定控件类型。 |
返回值:
类型 | 说明 |
---|---|
By | 返回By对象自身。 |
示例:
let by = BY.type('button') //使用静态构造器BY创建by对象,指定目标控件的控件类型属性。
clickable
clickable(b?: bool): By
指定目标控件的可点击状态属性,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
b | bool | 否 | 指定控件可点击状态,默认为true。 |
返回值:
类型 | 说明 |
---|---|
By | 返回By对象自身。 |
示例:
let by = BY.clickable(true) //使用静态构造器BY创建by对象,指定目标控件的可点击状态属性。
longClickable9+
longClickable(b?: bool): By
指定目标控件的可长按点击状态属性,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
b | bool | 否 | 指定控件可长按点击状态,默认为true。 |
返回值:
类型 | 说明 |
---|---|
By | 返回By对象自身。 |
示例:
let by = BY.longClickable(true) //使用静态构造器BY创建by对象,指定目标控件的可长按点击状态属性。
scrollable
scrollable(b?: bool): By
指定目标控件的可滑动状态属性,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
b | bool | 否 | 控件可滑动状态,默认为true。 |
返回值:
类型 | 说明 |
---|---|
By | 返回By对象自身。 |
示例:
let by = BY.scrollable(true) //使用静态构造器BY创建by对象,指定目标控件的可滑动状态属性。
enabled
enabled(b?: bool): By
指定目标控件的使能状态属性,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
b | bool | 否 | 指定控件使能状态,默认为true。 |
返回值:
类型 | 说明 |
---|---|
By | 返回By对象自身。 |
示例:
let by = BY.enabled(true) //使用静态构造器BY创建by对象,指定目标控件的使能状态属性。
focused
focused(b?: bool): By
指定目标控件的获焦状态属性,返回By对象自身。
系统能力:SystemCapability.Test.UiTest
参数:
参数名 | 类型 |
---|