Native Metric Tests

Native metric tests are typically used for exercising hardware abstraction layers (HALs) or interacting directly with lower-level system services. To leverage continuous testing service, native metric tests should be built with the google-benchmark framework.

Example

See sample native test module setup at: bionic/benchmarks/bionic-benchmarks

Summary of steps

  1. Test module configuration file should use the BUILD_NATIVE_BENCHMARK build rule so that google-benchmark dependencies are included automatically.
  2. Build the test module with make:

    make -j40 bionic-benchmarks
    
  3. Automatic installation and run with the Trade Federation test harness:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=bionic-benchmarks
    
  4. Manually install and run like so:

    1. Push the generated test binary onto device:

      adb push ${OUT}/data/benchmarktest/bionic-benchmarks/bionic-benchmarks32 \
        /data/benchmarktest/bionic-benchmarks/bionic-benchmarks32
      
    2. Execute the test by invoking test binary on device:

      adb shell /data/benchmarktest/bionic-benchmarks/bionic-benchmarks32