android - AOSP 定制测试套件

标签 android android-source

我正在开发一款针对 Android P 的自定义设备,并添加了使用一些隐藏 API 的自定义系统服务。然后,该服务将由不属于 AOSP 源代码树一部分的 Android 应用程序使用。

我已经为我的服务添加了一些单元和仪器测试,现在希望将它们集成到我的 CI 管道中。最好的方法是什么——扩展 CTS?但这只是我的服务,不公开任何公共(public) API。车联网?但据我所知,VTS 仅用于测试 HAL 和内核。有没有办法声明自定义测试套件,以便能够使用 Trade Federation/Atest 工具(如“tradefed.sh run my_test_suite”)运行它?

最佳答案

Atest 使用 TEST_MAPPING 来查找应该运行的测试。因此,如果您只想使用 API 测试您的 APK/服务,也许您可​​以将仪器测试模块添加到代码顶部目录中的 TEST_MAPPING 中,然后运行 ​​atest 在代码顶部目录中运行您的仪器测试。

source.android.com 提供 document了解如何使用 atest 运行基于 TEST_MAPPING 的仪器测试和 tradefederation 测试。

如果您的单元测试基于 Robolectric,则 atest 可以正确运行它,因为 atest 在 Android P 中也支持 Robolectric 单元测试.

关于android - AOSP 定制测试套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56120157/

相关文章:

android - 在哪里可以找到源代码链接

android - 在 Android 源代码中添加预构建的二进制文件

git - 将供应商 Android 更改集成到 aosp 中

Android 构建因 cordova-whitelist-plugin 而失败

android - 如何使用 TrafficStats 分别统计 2G 和 3G 的数据使用量?

android - 如何在添加到 Android AOSP 的自定义项目中设置文件权限

android-source - Android 源代码库中 "repo sync -d"的用途是什么

java - 在应用程序销毁时保存变量不起作用

android - 如何使用 GUI 可靠地将文件传输到 Android 模拟器 SDCard?

android - 没有连接时不调用插入/删除文档回调的 Firestore 数据库