1# @ohos.app.ability.abilityDelegatorRegistry (AbilityDelegatorRegistry) 2 3AbilityDelegatorRegistry是[测试框架](../../application-test/arkxtest-guidelines.md)模块,该模块用于获取[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)和[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象,其中[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)对象提供添加用于监视指定ability的生命周期状态更改的AbilityMonitor对象的能力,[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象提供获取当前测试参数的能力。 4 5> **说明:** 6> 7> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 本模块接口仅可在测试框架中使用。 9 10## 导入模块 11 12```ts 13import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 14``` 15 16## AbilityLifecycleState 17 18Ability生命周期状态,该类型为枚举,可配合[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)的[getAbilityState(ability)](js-apis-inner-application-abilityDelegator.md#getabilitystate9)方法返回不同ability生命周期。 19 20**系统能力** :以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core 21 22| 名称 | 值 | 说明 | 23| ------------- | ---- | --------------------------- | 24| UNINITIALIZED | 0 | 表示Ability处于无效状态。 | 25| CREATE | 1 | 表示Ability处于已创建状态。 | 26| FOREGROUND | 2 | 表示Ability处于前台状态。 | 27| BACKGROUND | 3 | 表示Ability处于后台状态。 | 28| DESTROY | 4 | 表示Ability处于已销毁状态。 | 29 30## AbilityDelegatorRegistry.getAbilityDelegator 31 32getAbilityDelegator(): AbilityDelegator 33 34获取应用程序的[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)对象,该对象能够使用调度测试框架的相关功能。 35 36**系统能力:** SystemCapability.Ability.AbilityRuntime.Core 37 38**返回值:** 39 40| 类型 | 说明 | 41| ------------------------------------------------------------ | ------------------------------------------------------------ | 42| [AbilityDelegator](js-apis-inner-application-abilityDelegator.md#AbilityDelegator) | [AbilityDelegator](js-apis-inner-application-abilityDelegator.md#AbilityDelegator)对象。可以用来调度测试框架相关功能。 | 43 44**示例:** 45 46```ts 47import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 48 49let abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 50 51let want = { 52 bundleName: 'com.ohos.example', 53 abilityName: 'MainAbility' 54}; 55abilityDelegator.startAbility(want, (err) => { 56 if (err.code !== 0) { 57 console.log('Success start ability.'); 58 } else { 59 console.log('Failed start ability, error: ' + JSON.stringify(err)); 60 } 61}) 62``` 63 64## AbilityDelegatorRegistry.getArguments 65 66getArguments(): AbilityDelegatorArgs 67 68获取单元测试参数[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象。 69 70**系统能力:** SystemCapability.Ability.AbilityRuntime.Core 71 72**返回值:** 73 74| 类型 | 说明 | 75| ------------------------------------------------------------ | ------------------------------------------------------------ | 76| [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md) | [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象。可以用来获取测试参数。 | 77 78**示例:** 79 80```ts 81import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 82 83let args = AbilityDelegatorRegistry.getArguments(); 84console.info('getArguments bundleName:' + args.bundleName); 85console.info('getArguments parameters:' + JSON.stringify(args.parameters)); 86console.info('getArguments testCaseNames:' + args.testCaseNames); 87console.info('getArguments testRunnerClassName:' + args.testRunnerClassName); 88``` 89