Настройте поведение тестов, указав различные аргументы для средства запуска инструментов. Их можно либо применить к вашей конфигурации Gradle, либо добавить непосредственно при запуске инструментов из командной строки.
Чтобы настроить аргументы инструментирования при запуске тестов из Android Studio, выполните следующие действия:
- Отредактируйте конфигурацию запуска, нажав «Изменить» и выбрав конфигурацию, которую хотите изменить.
Рисунок 1. Отредактируйте конфигурацию запуска. - Измените аргументы инструментария, щелкнув
Рисунок 2. Отредактируйте аргумент инструментария. рядом с полем «Аргументы инструментария» . - Нажмите
Рисунок 3. Добавьте аргумент инструментирования. и добавьте необходимый аргумент инструментария.
ДополнительныйTestOutputDir
Настраивает, где на устройстве сохраняются отчеты об тестах JSON и результаты профилирования.
- Тип аргумента: строка пути к файлу.
- По умолчанию: проверить внешний каталог APK.
androidx.benchmark.dryRunMode.enable
Позволяет запускать тесты в одном цикле, чтобы убедиться, что они работают правильно.
Это означает:
- Ошибки конфигурации не применяются (например, чтобы упростить регулярные проверки правильности на эмуляторах).
- Тестирование выполняется только в одном цикле без прогрева.
- Измерения и трассировки не фиксируются, чтобы сократить время выполнения.
Это оптимизирует производительность тестирования и проверку логики тестов, а не правильность сборки и измерений.
- Тип аргумента: логический
- По умолчанию:
false
androidx.benchmark.iterations
Переопределяет целевое количество итераций, управляемое временем, чтобы обеспечить постоянный объем работы. Обычно это полезно только при включенном профилировании , чтобы обеспечить согласованный объем работы, выполняемой в трассировке профилирования при сравнении различных реализаций или запусков. В других сценариях это, вероятно, снижает точность или стабильность измерений.
- Тип аргумента: целое число
- По умолчанию: не указано
androidx.benchmark.junit4.SideEffectRunListener
Вы можете получить противоречивые результаты тестирования, если во время выполнения теста выполняется несвязанная фоновая работа.
Чтобы отключить фоновую работу во время тестирования производительности, установите тип аргумента инструментария listener
на androidx.benchmark.junit4.SideEffectRunListener
.
- Тип аргумента: строка
- Доступные варианты:
-
androidx.benchmark.junit4.SideEffectRunListener
-
- По умолчанию: не указано
androidx.benchmark.output.enable
Включает запись результирующего файла JSON во внешнее хранилище.
- Тип аргумента: логический
- По умолчанию:
true
androidx.benchmark.profiling.mode
Позволяет захватывать файлы трассировки во время выполнения тестов. Доступные параметры см. в разделе «Профилирование микробенчмарка» .
- Тип аргумента: строка
- Доступные варианты:
-
MethodTracing
-
StackSampling
-
None
-
- По умолчанию:
None
androidx.benchmark.suppressErrors
Принимает список ошибок, разделенных запятыми, которые преобразуются в предупреждения.
- Тип аргумента: список строк
- Доступные варианты:
-
DEBUGGABLE
-
LOW-BATTERY
-
EMULATOR
-
CODE-COVERAGE
-
UNLOCKED
-
SIMPLEPERF
-
ACTIVITY-MISSING
-
- По умолчанию: пустой список.
androidx.benchmark.startupMode.enable (устарело)
Перенастраивает поведение цикла для поддержки кода тестирования во время запуска. Тесты выполняются без прогрева в течение 10 измерений. Чтобы минимизировать накладные расходы в микротестах, усреднение цикла отключено.
- Тип аргумента: логический
- По умолчанию:
false
Рекомендуется для вас
- Примечание: текст ссылки отображается, когда JavaScript отключен.
- Аргументы инструментария макробенчмарка
- Профилирование микробенчмарка
- Создание базовых профилей {:#creating-profile-rules}