鸿蒙OS AbilityDelegation
应用程序的测试实用程序类。
此类提供了用于获取应用程序内部对象的方法,并且可以操作这些对象。例如,它可以控制 Ability 的生命周期调度,控制 AbilitySlice 的转换和返回以及向 UI 发送指定的输入事件。
您可以基于该类实现自己的测试类。您的测试类必须继承 AbilityTestCase 类,并且与要测试的应用程序处于同一过程中。AbilityDelegation 充当观察者,以监视应用程序的运行状态。它还可以控制应用程序的行为以模拟用户行为以进行测试。
领域摘要
修饰符和类型 | 领域 | 描述 |
---|---|---|
静态整数 | 活性 | 定义活动生命周期状态。 |
静态整数 | 背景 | 定义背景生命周期状态。 |
静态整数 | 不活跃 | 定义非活动生命周期状态。 |
静态整数 | 初始 | 定义INITIAL生命周期状态。 |
静态字符串 | LIB_PATH | 定义包含测试用例资源的JAR包的绝对路径。 |
静态字符串 | RUN_TEST | 定义用于启动测试用例的类,该类在启动 Ability 时由 Intent 传递。 |
静态整数 | 未定义 | 定义未定义的生命周期状态。 |
构造器摘要
建设者 | 描述 |
---|---|
AbilityDelegation() |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
abstract void | doAbilityActive() | 将能力的生命周期状态从不活动更改为活动。 |
abstract void | doAbilityBackground() | 将能力的生命周期状态从不活动更改为背景。 |
abstract void | doAbilityForeground(意图意图) | 将能力的生命周期状态从背景更改为不活动。 |
abstract void | doAbilityInactive() | 将能力的生命周期状态从活动更改为不活动。 |
abstract void | doAbilitySliceActive() | 将能力切片的生命周期状态从不活动更改为活动。 |
abstract void | doAbilitySliceBackground() | 将能力切片的生命周期状态从不活动更改为背景。 |
abstract void | doAbilitySliceForeground(意图意图) | 将能力切片的生命周期状态从“背景”更改为“不活动”。 |
abstract void | doAbilitySliceInactive() | 将能力切片的生命周期状态从“活动”更改为“不活动”。 |
abstract void | doAbilitySliceStart(意图意图) | 将能力切片的生命周期状态从 INITIAL 更改为 INACTIVE。 |
abstract void | doAbilitySliceStop() | 将能力切片的生命周期状态从背景更改为初始。 |
abstract void | doAbilityStart(意图意图) | 将能力的生命周期状态从初始更改为不活动。 |
abstract void | doAbilityStop() | 将能力的生命周期状态从背景更改为初始。 |
抽象能力 | getAbility() | 在当前进程中获得前台的功能。 |
抽象能力信息 | getAbilityInfo() | 获取一个功能的内部 AbilityInfo 对象。 |
抽象列表 < AbilitySlice > | getAbilitySlice(字符串名称) | 从当前能力中获得具有给定名称的能力切片。 |
抽象整数 | getAbilitySliceState(AbilitySlice targetSlice) | 获取能力切片的生命周期状态。 |
抽象整数 | getAbilityState() | 获得能力的生命周期状态。 |
抽象列表 < AbilitySlice > | getAllAbilitySlice() | 获取当前能力中包含的所有能力切片。 |
抽象AbilitySlice | getCurrentAbilitySlice() | 在当前能力中获得前景能力切片。 |
抽象能力 | getCurrentTopAbility() | 返回此应用程序的顶级功能 |
抽象意图 | getIntent() | 获取包含有关当前功能的启动信息的 Intent 对象。 |
abstract void | 输出(字符串msg) | 打印出测试用例执行的详细信息。 |
abstract void | runOnUIThreadSync(Runnable的任务) | 在 UI 线程上执行同步任务。 |
抽象布尔 | triggerClickEvent(组件视图) | 触发单击事件,并将其发送到指定的 UI 组件以模拟用户输入。 |
抽象布尔 | triggerKeyEvent(KeyEvent 键) | 触发按键事件并将其发送到前台功能。 |
抽象布尔 | triggerTouchEvent(TouchEvent touchEvent) | 触发触摸事件并将其发送到前台功能。 |
从类 java.lang 继承的方法。目的 |
---|
clone,equals,finalize,getClass,hashCode,notify,notifyAll,toString,wait,wait,wait |
领域细节
活性
public static final int 活动
定义活动生命周期状态。
也可以看看:
背景
公共静态最终int背景
定义背景生命周期状态。
也可以看看:
不活跃
公共静态最终诠释 INACTIVE
定义非活动生命周期状态。
也可以看看:
初始
公共静态最终诠释 INITIAL
定义 INITIAL 生命周期状态。
也可以看看:
LIB_PATH
公共静态最终字符串 LIB_PATH
定义包含测试用例资源的JAR包的绝对路径。当能力开始时,路径由意图传递 。
也可以看看:
RUN_TEST
公共静态最终字符串 RUN_TEST
定义用于启动测试用例的类,该类在启动 Ability 时由 Intent 传递 。
也可以看看:
未定义
public static final int 未定义
定义未定义的生命周期状态。
也可以看看:
构造器详细信息
能力委托
公共能力委托()
方法细节
runOnUIThreadSync
公共抽象无效 runOnUIThreadSync(Runnable的任务)
在 UI 线程上执行同步任务。
应该调用此方法来执行必须在 UI 线程上执行的操作,例如,窗口上的操作。
参数:
参数名称 | 参数说明 |
---|---|
任务 | 指示要在 UI 线程上执行的任务。 |
输出
公共抽象无效输出(String msg)
打印出测试用例执行的详细信息。
您可以调用此方法以打印出一些有关测试用例执行的必要信息,例如测试时间和结果。
参数:
参数名称 | 参数说明 |
---|---|
msg | 指示测试用例执行的详细信息。 |
获得意图
公共抽象意图 getIntent()
获取包含有关当前功能的启动信息的 Intent 对象。
Intent 对象包含与在功能启动时设置的参数和属性匹配的键,例如功能名称和模板类型。您可以调用此方法以获取 Intent 对象,然后使用 Intent 提供的方法获取所需的启动信息。
返回值:
返回包含能力启动信息的 Intent 对象。
获得当前能力切片
公共抽象 AbilitySlice getCurrentAbilitySlice()
在当前能力中获得前景能力切片。
一个功能可能包含多个功能片。您可以调用此方法以获得当前在前台的能力切片。要在后台获取能力切片,请使用getAbilitySlice(java.lang.String)方法。
返回值:
返回前景中的异能切片。
也可以看看:
getAbilitySlice(String),getAllAbilitySlice()
获得能力切片
公共摘要列表 < AbilitySlice > getAbilitySlice(字符串名称)
从当前能力中获得具有给定名称的能力切片。
一个功能可能包含多个具有相同名称的功能片。您可以调用此方法以获取具有指定名称的能力切片实例。请注意,只能获得实例化的对象。如果未实例化指定的类,则返回一个空列表。获取 AbilitySlice 对象后,可以调用其所有外部方法。
参数:
参数名称 | 参数说明 |
---|---|
名称 | 待获取的能力切片的全名,例如:com.huawei.hiworld.MyAbilitySlice。 |
返回值:
返回具有给定名称的能力切片列表;如果找不到能力切片,则返回一个空列表。
获得全能切片
公共摘要列表 < AbilitySlice > getAllAbilitySlice()
获取当前能力中包含的所有能力切片。
返回值:
返回所有能力切片的列表;如果找不到能力切片,则返回一个空列表。
获得能力切片状态
公共抽象 int getAbilitySliceState(AbilitySlice targetSlice)
获取能力切片的生命周期状态。
参数:
参数名称 | 参数说明 |
---|---|
targetSlice | 指示目标能力切片。 |
返回值:
返回能力切片的生命周期状态,可以是 INITIAL(0),INACTIVE(1),ACTIVE(2)或 Background(3)。
做能力切片开始
公共抽象 void doAbilitySliceStart(Intent intent)
将能力切片的生命周期状态从 INITIAL 更改为 INACTIVE。
参数:
参数名称 | 参数说明 |
---|---|
意图 | 指示能力切片开始时携带的信息。 |
做能力切片
公共抽象无效 doAbilitySliceActive()
将能力切片的生命周期状态从不活动更改为活动。
做能力切片无效
公共抽象无效 doAbilitySliceInactive()
将能力切片的生命周期状态从“活动”更改为“不活动”。
做能力切片背景
公共抽象无效 doAbilitySliceBackground()
将能力切片的生命周期状态从不活动更改为背景。
做能力切片前景
公共抽象 void doAbilitySliceForeground(Intent intent)
将能力切片的生命周期状态从“背景”更改为“不活动”。
参数:
参数名称 | 参数说明 |
---|---|
意图 | 指示能力切片开始时携带的信息。 |
做能力切片停止
公共抽象无效 doAbilitySliceStop()
将能力切片的生命周期状态从背景更改为初始。
获得能力
公共抽象能力 getAbility()
在当前进程中获得前台的功能。获得此功能后,可以调用其所有外部方法。
要获取流程中的其他能力,请使用 Ability#startAbility(Intent)方法启动目标能力,然后调用此方法来获取它们。
返回值:
返回前景中的异能。
获得能力状态
公共抽象int getAbilityState()
获得能力的生命周期状态。
返回值:
返回功能的生命周期状态,可以是INITIAL(0),INACTIVE(1),ACTIVE(2)或Background(3)。
获得能力信息
公共抽象AbilityInfo getAbilityInfo()
获取一个功能的内部 AbilityInfo对象。
AbilityInfo对象包含有关能力的信息,包括捆绑包名称,类名称和类型。
返回值:
返回功能的内部AbilityInfo对象。
做能力开始
公共抽象void doAbilityStart(Intent intent)
将能力的生命周期状态从初始更改为不活动。
参数:
参数名称 | 参数说明 |
---|---|
意图 | 指示该功能启动时携带的信息。 |
做能力活跃
公共抽象无效 doAbilityActive()
将能力的生命周期状态从不活动更改为活动。
做能力不活跃
公共抽象无效 doAbilityInactive()
将能力的生命周期状态从活动更改为不活动。
做能力背景
公共抽象无效 doAbilityBackground()
将能力的生命周期状态从不活动更改为背景。
做能力前景
公共抽象 void doAbilityForeground(Intent intent)
将能力的生命周期状态从背景更改为不活动。
参数:
参数名称 | 参数说明 |
---|---|
意图 | 指示该功能启动时携带的信息。 |
做能力停止
公共抽象无效 doAbilityStop()
将能力的生命周期状态从背景更改为初始。
触发点击事件
公共抽象 boolean triggerClickEvent(组件视图)
触发单击事件,并将其发送到指定的 UI 组件以模拟用户输入。
参数:
参数名称 | 参数说明 |
---|---|
视图 | 指示 UI 组件,可以是按钮或图像。 |
返回值:
如果事件已消耗,则返回 true;否则,返回 false。否则返回 false。
触发按键事件
公共抽象布尔布尔 TriggerKeyEvent(KeyEvent 键)
触发按键事件并将其发送到前台功能。
参数:
参数名称 | 参数说明 |
---|---|
键 | 指示键事件的类型。目前只有Back事件可用。 |
返回值:
如果事件已消耗,则返回true;否则,返回false。否则返回false。
触发触摸事件
公共抽象布尔触发器触发事件(TouchEvent touchEvent)
触发触摸事件并将其发送到前台功能。
参数:
参数名称 | 参数说明 |
---|---|
touchEvent | 指定坐标和事件类型,例如 ACTION_DOWN 或 ACTION_UP。 |
返回值:
如果事件已消耗,则返回 true;否则,返回 false。否则返回 false。
获得当前的最高能力
公共抽象能力 getCurrentTopAbility()
返回此应用程序的顶级功能
返回值:
返回此应用程序的顶级功能。