在HarmonyOS NEXT开发中如何在Ability.test.ets中获取windowStage?

在HarmonyOS NEXT开发中如何在Ability.test.ets中获取windowStage?DevEco Studio更新到5.0后,由于下掉了构建项目中ohosTest目录下的testability testrunner,如何在Ability.test.ets中获取windowStage

阅读 1.1k
2 个回答

从5.0.3.403版本开始,新创建的工程/模块的ohosTest目录下默认不创建testability、testrunner和resources目录,历史工程仍保留这些目录,如果新工程需要使用ability或resources能力,需要开发者自行创建。
1.创建以下目录或文件,文件内容示例可在运行Instrument Test测试用例后,在对应模块的build/default/intermediates/src/ohosTest下查看。
testability目录 > TestAbility.ets文件
testability目录 > pages目录 > Index.ets文件
testrunner目录 > OpenHarmonyTestRunner.ets文件
resources目录 > base目录 > element目录 > color.json文件
resources目录 > base目录 > element目录 > string.json文件
resources目录 > base目录 > media目录 > icon.png文件
resources目录 > base目录 > profile目录 > test_pages.json文件
2.在module.json5文件中补充ability配置字段mainElement、pages、abilities,关于字段的具体说明请参考module.json5配置文件。
{
"module": {

"name": "entry_test",
"type": "feature",
"description": "$string:module_test_desc",
"mainElement": "TestAbility",                                   // 对应下方abilities中的ability name。
"deviceTypes": [
  "phone",
  "tablet",
  "2in1"
],
"deliveryWithInstall": true,
"installationFree": false,
"pages": "$profile:test_pages",                                 // 对应resources目录 > base目录 > profile目录 > test_pages.json文件。
"abilities": [                                                  // 添加的ability的配置信息。
  {
    "name": "TestAbility",
    "srcEntry": "./ets/testability/TestAbility.ets",
    "description": "$string:TestAbility_desc",
    "icon": "$media:icon",
    "label": "$string:TestAbility_label",
    "exported": true,
    "startWindowIcon": "$media:icon",
    "startWindowBackground": "$color:start_window_background"
  }
]

}
}
3.编写测试代码以获取windowStage :
在Ability.test.ets文件中,你可以通过特定的API调用来获取windowStage。这通常涉及到在测试用例中设置适当的断点,然后在断点处检查或修改windowStage。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题