Родные тесты

Собственный тест для платформы обычно обращается к низкоуровневым HAL или выполняет необработанный IPC для различных системных сервисов. Поэтому подход к тестированию обычно тесно связан с тестируемой службой.

Создавайте собственные тесты, используя фреймворк gtest . Это предварительное условие для интеграции с инфраструктурой непрерывного тестирования.

Примеры

Вот несколько примеров собственных тестов в исходном коде платформы:

Сводка шагов

  1. См. Пример настройки собственного тестового модуля по адресу: frameworks / base / libs / hwui / tests / unit /
  2. BUILD_NATIVE_TEST тестового модуля должна использовать BUILD_NATIVE_TEST сборки BUILD_NATIVE_TEST, чтобы зависимости gtest включались автоматически
  3. Напишите тестовую конфигурацию. Смотрите простые и сложные варианты.
  4. Соберите тестовый модуль с помощью mmm или mma (в зависимости от того, инкрементная это или полная сборка), например:

    make hwui_unit_tests -j
    
  5. Используйте Atest для локального запуска теста:

    atest hwui_unit_tests
    
    1. Вы также можете добавлять аргументы в свои собственные тесты. Некоторые особенно полезные флаги - это native-test-flag , который указывает дополнительные значения флагов для передачи в команду оболочки native-test-timeout и native-test-timeout , который позволяет указать значение тайм-аута теста в микросекундах.

      atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \
      --module-arg test-name:native-test-timeout:60000
      
  6. Запустите тест с помощью тестовой системы Торговой федерации:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  7. Установите и запустите вручную:

    1. Загрузите сгенерированный тестовый двоичный файл на устройство:

      adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
        /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. Выполните тест, вызвав тестовый двоичный файл на устройстве:

      adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

    Это запускает собственный тест. Вы также можете добавить параметр --help в свой тестовый двоичный файл, чтобы узнать больше о различных способах настройки выполнения теста. Наконец, см. Расширенное руководство gtest, чтобы узнать о дополнительных параметрах и их использовании.