Чтобы интегрировать тесты в службу непрерывного тестирования платформы, они должны соответствовать рекомендациям на этой странице и следовать рекомендуемому алгоритму.
- Используйте систему сборки Soong для простой конфигурации тестов .
- Используйте сопоставление тестов , чтобы создавать правила тестирования до и после отправки непосредственно в дереве исходного кода Android.
- Запускайте тесты локально с помощью Atest .
Типы тестов
Поддерживаемые типы тестов:
- Инструментальные тесты поддерживают как функциональные, так и метрические тесты. Общие рекомендации по тестированию приложений см. в разделе «Протестируйте свое приложение» .
- GoogleTest (GTest) поддерживает следующие типы тестов:
- Функциональные GTests с использованием платформы GTest
- Метрические тесты с использованием
google-benchmark
- Хост-тесты JAR с использованием JUnit
Функциональные тесты подтверждают успешность или неудачу тестовых случаев, в то время как тесты метрик обычно выполняют действие повторно для сбора метрик времени.
Благодаря стандартизированному формату ввода/вывода устраняется необходимость в индивидуальном анализе и последующей обработке результатов для каждого теста, а для всех тестов, соответствующих соглашению, можно использовать общие тестовые программы. См. обзор Торговой федерации , чтобы узнать о системе непрерывного тестирования, включенной в Android.
Рекомендации по тестированию
Ожидается, что тестовые случаи, выполняемые через службу непрерывного тестирования, будут герметичными , то есть все зависимости объявляются и предоставляются вместе с тестами. См . Hermetic Servers в блоге тестирования Google, чтобы понять этот принцип. Короче говоря, герметичные испытания не требуют:
- Вход в аккаунт Google
- Настроены возможности подключения (телефония/Wi-Fi/Bluetooth/NFC)
- Параметры теста, переданные в
- Настройка или демонтаж выполняется с помощью тестового комплекта для конкретного тестового примера.