Catch up on everthing we announced at this year's Firebase Summit. Learn more

Анализируйте результаты лаборатории тестирования Firebase

Есть несколько способов использовать Lab Test Firebase для выполнения тестов на вашем Android приложения, включая интерфейс командной строки , Android Studio , в Test Lab UI в Firebase консоли, а также API для тестирования . Как бы вы ни решили начать тесты, результаты сохраняются в указанном вами проекте Firebase. Вы можете исследовать результаты , используя ToolResults API в дополнение к любому из перечисленных выше инструментов. На этой странице описывается, как просматривать и анализировать результаты этих тестов.

Ключевые идеи

Чтобы увидеть результаты всех предыдущих тест, выберите Test Lab в левой навигационной панели вашего проекта в консоли Firebase. На этой странице отображаются все тестовые прогоны из приложений, которые вы тестировали с помощью своего проекта с помощью Test Lab.

Чтобы просмотреть результаты теста, вам сначала нужно понять три концепции:

При выполнении теста или набора тестов против устройств и конфигураций , которые вы выбрали, Lab Test запускает тест против вашего приложения в пакете, а затем отображает результаты в виде тестовой матрицы.

Устройства × Выполнения тестов = Матрица тестов

Устройство
Физическое или виртуальное устройство (только Android), на котором вы запускаете тест, например телефон, планшет или носимое устройство. Устройства в тестовой матрице идентифицируются по модели устройства, версии ОС, ориентации экрана и языку (также известный как географические и языковые настройки).
Тест, выполнение теста
Тест (или набор тестовых случаев) для запуска на устройстве. Вы можете запустить один тест для каждого устройства или, при желании, сегментировать тест и запускать его тестовые случаи на разных устройствах.
Матрица испытаний
Содержит статусы и результаты тестов для выполнения ваших тестов. Если выполнение какого-либо теста в матрице не удается, не удается выполнить всю матрицу.

В следующих разделах объясняется, как перемещаться по результатам тестирования.

Интерпретировать результаты истории испытаний

При переходе к результатам тестов, выбрав Lab Test, вы увидите результаты тестов вы добежите.

История тестирования сгруппирована по приложениям. Для каждого приложения отображаются только пять последних тестовых матриц; если более доступны, вы можете нажать на ссылку Всех матриц в нижней части списка тестового приложения , чтобы увидеть полный список для этого приложения.

Интерпретация результатов матрицы испытаний

При запуске теста через Test Lab UI , вы будете перенаправлены на страницу , где вы можете увидеть тестовую матрицу и нажмите конкретное выполнение тестов для просмотра результатов тестирования. Android - студия и команда gcloud обеспечивают URL для страницы результатов теста матрицы , а также.

В типичной тестовой матрице вы можете запустить тест на дюжине или около того различных устройств. Каждое выполнение теста может иметь разные результаты. Возможные результаты выполнения любого теста в матрице тестирования включают следующее:

  • ПрошедшийТест пройден : Сбоев не обнаружено.
  • Не смоглиТест не пройден : Произошла по крайней мере одна ошибка.
  • НеубедительныйТест пройден : Результаты теста неубедительны, возможно, из-за ошибки тестовой лаборатории.
  • ПропущеноТест пройден : Выбранные значения измерений для выполнения некоторых тестов в матрице несовместимы. Это происходит, когда выбранные вами устройства несовместимы с одним или несколькими выбранными вами уровнями Android API.

Чтобы просмотреть сводные результаты тестирования для всех тестовых матриц для данного приложения в вашем проекте Firebase, щелкните имя приложения, как показано в следующем примере:

Пример страницы результатов матрицы тестов с четырьмя выполнениями тестов Результаты матрицы испытаний

Это приведет вас к списку тестовых матриц для вашего приложения, где вы можете щелкнуть имя любой тестовой матрицы, чтобы увидеть результаты тестовой матрицы, и где вы можете щелкнуть имя приложения (показанное в красном поле ниже), чтобы просмотреть список тестовой матрицы для других приложений, связанных с вашим проектом Firebase.

Пример страницы со списком тестовой матрицы Список тестовых матриц

Тестовая матрица может пройти, не пройти или быть безрезультатной. Тестовая матрица отображается как неудачная или неубедительная, если какие-либо тесты в этой матрице завершаются неудачно или не дают результатов.

Интерпретировать результаты робо-теста

Если вы запускали тесты с помощью Robo, в ваши результаты будут включены видеоролики и снимки экрана, на которых Robo сканирует ваш пользовательский интерфейс, в дополнение к обычным тестовым показателям. Эти видео и скриншоты содержат визуальные индикаторы действий, которые Робо выполнял во время сканирования, аналогично функции «Показать касания» в Android. Вы можете использовать индикаторы, которые помогут вам следить за прогрессом Robo и воспроизвести любые ошибки, которые он может обнаружить.

Пример видео с результатами робо-теста

Результаты робо-тестирования

Интерпретировать результаты одного выполнения теста

На странице результатов матрицы тестирования щелкните одно из выполнений теста, чтобы увидеть результат выполнения этого конкретного теста.

Пример страницы результатов выполнения теста Результаты выполнения теста

На этой странице вы можете увидеть время, необходимое для выполнения каждого теста. Вы также можете увидеть результаты для конкретных тестовых случаев, которые соответствуют методам в вашем тестовом APK (для инструментальных тестов), и подробные результаты тестирования, включая журналы тестирования, снимки экрана и видео. Для теста Robo , подробные результаты испытаний также включать карту активности , которая графически показывает пути пользовательского интерфейса , которые были посещаемые испытания Robo.

Результаты раздельного тестирования КИПиА

Чтобы помочь вам интерпретировать результаты инструментальных тестов, Test Lab разделяет каждый тест на отдельную страницу подробного отчета с трассировками стека, журналами и видео. Эта функция работает независимо от того, используете вы Android Orchestrator или нет.

Пример страницы результатов теста Результаты теста

Интерпретировать результаты доступности

Робо-тесты используют Android Accessibility Scanner для обнаружения проблем со специальными возможностями в вашем приложении (обратите внимание, что вы также можете запустить сканирование локально на своем устройстве). Инструкции о том , как проанализировать и интерпретировать результаты доступности вашего теста Robo визит Начало работы с Accessibility сканера .

Для получения общей информации о том , как улучшить доступность вашего приложения, посетите документацию для Android разработчика Доступность .

Показатели эффективности

Тесты, выполняемые на физических устройствах, также возвращают показатели производительности:

Метрическая Требуемая конфигурация устройства
Время запуска приложения API 19+
использование процессора API 21+
Использование памяти
Сетевая активность
Кадров в секунду API 21+ и включает в себя SurfaceView
Графическая производительность API 23+

Детали графической производительности

Отчет о производительности графики содержит статистику по нескольким ключевым показателям графики:

  • Пропущенный Vsync: Число пропущенных Vsync событий, разделенных на количество кадров , которые имели больше чем 16 мс для визуализации.
  • Высокий входной задержки: Количество входных событий , которые имели более 24 мс, деленное на количество кадров , которые имели больше , чем 16 мс для визуализации.
  • Медленный поток пользовательского интерфейса: Количество раз , поток пользовательского интерфейса потребовалось более 8 мс , чтобы закончить, деленное на количество кадров , которые имели больше чем 16 мс для визуализации.
  • Медленные команды Draw: Количество раз , что отправка команды привлечь к ГПУ потребовалось более 12 мс, разделенных на количество кадров , которые имели больше , чем 16 мс для визуализации.
  • Медленные загрузки растровых изображений: число раз , что растровое изображение заняло больше времени , чем 3,2 мс , чтобы загрузить на GPU , разделенной на число кадров , которые имели больше , чем 16 мс для визуализации.
  • Время загрузки : Распределение времени рендеринга для каждого кадра тестового прогона. Время рендеринга более 32 миллисекунд вызывает заметное замедление вашего пользовательского интерфейса. Время рендеринга 700+ указывает на замороженные кадры. Визуализация данных собрана из dumpsys graphicsstats .

Подробные результаты тестирования

Подробные результаты тестирования доступны в течение 90 дней после запуска теста и хранятся в корзине Google Cloud Storage (но также видны в консоли Firebase). Вы можете просмотреть подробные результаты тестирования в ведре Cloud Storage при нажатии кнопки Просмотр исходных файлов на странице результатов выполнения теста. Когда подробные результаты тестирования больше не доступны, вы все равно можете увидеть, какие тесты прошли или не прошли.

Для того, чтобы сохранить подробные результаты тестирования на более чем 90 дней, вы должны направить эти результаты теста на ведро Cloud Storage , что вы владеете , используя --results-ковш вариант gcloud командной строки . Вы можете установить параметр Возраст , чтобы определить , как долго результаты сохраняются в вашем ведре Cloud Storage. См условия Lifecycle для получения информации о том , как изменить настройки Age.