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