平台的 GoogleTest(GTest,有时也称为“原生测试”)通常会访问较低级别的 HAL,或针对各种系统服务执行原始 IPC。因此,测试方法通常与接受测试的服务密切相关。
如需与持续测试基础架构集成,请使用 GTest 框架构建 GTest。
示例
以下是平台源代码中 GTest 的一些示例:
步骤总结
- 按照 GTest 模块设置示例操作。 
- 如需自动包含 GTest 依赖项,请在测试模块配置中使用 - BUILD_NATIVE_TESTbuild 规则。
- 对于增量 build,请使用 - mmm构建测试模块;对于完整 build,请使用- mma构建测试模块:- make hwui_unit_tests -j
- 使用 Atest 在本地运行测试: - atest hwui_unit_tests- 您还可以向 GTest 中添加参数。以下参数特别有用: - native-test-flag指定了要传递给 GTest shell 命令的附加标志值。
- native-test-timeout以微秒为单位指定了测试超时值。- 以下示例代码使用了这两个参数: - atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \ --module-arg test-name:native-test-timeout:60000
 
- 使用 Trade Federation 自动化测试框架运行测试: - make tradefed-all -j tradefed.sh run template/local_min --template:map test=hwui_unit_tests
- 手动安装并运行: - 将生成的测试二进制文件推送到设备: - adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \ /data/nativetest/hwui_unit_tests/hwui_unit_tests
- 启动 GTest 并在设备上调用测试二进制文件,以执行测试: - adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests- 如需详细了解如何自定义测试作业,请将 - --help参数添加到您的测试二进制文件。如需详细了解参数,请参阅 GTest 高级指南。
 
