Android 脚本层(即 SL4A)是一个自动化工具集,用于以独立于平台的方式调用 Android API。它既支持通过 adb
实现远程自动化,又支持通过一系列轻量级转换层从设备上执行脚本。
该项目位于 platform/external/sl4a。
使用
您可以按照 SL4A README 手动构建并安装 SL4A。在通过 Tradefed 运行时,您可以利用一些自动化测试框架实用程序,使之更易于使用。
下载并安装
您可以首先查看 BT-discovery-sl4a.xml,这是一个使用两部设备的 Tradefed 配置示例。大多数设备 build 的 tests
文件夹中都有 SL4A.apk
。
上述 Tradefed 示例将自动获取相应版本,刷写这两部设备并在这两部设备上安装 SL4A.apk
。您可以这样运行:
source build/envsetup.sh
lunch
make sl4a
tradefed.sh run google/example/BT-discovery-sl4a
或者,在构建后,运行以下命令:
./tradefed.sh run google/example/BT-discovery-sl4a
使用 SL4A 在 Tradefed 中编写测试
您可以按照上述测试样本 Sl4aBluetoothDiscovery.java 来编写。该样本给出了一个很好的例子,说明了在 Tradefed 测试中使用 SL4A 的流程。
SL4A API 文档
可以生成通过 SL4A 提供的回调的完整列表。从 SL4A 源目录 platform/external/sl4a/
中,运行以下命令:
python Docs/generate_api_reference_md.py
在 Docs 目录中,将有一个 ApiReference.md
文件,其中包含 SL4A 中可用的 RPC 函数,以及这些 RPC 函数的文档。