Инструменты тестирования Android приложений. Часть 3
Содержание:
Logcat
Наверное, самый базовый инструмент, который используют Android разработчики и QA специалисты при работе с Android.
В ходе написания кода разработчики выводят в консоль промежуточные результаты работы приложения в виде текстовых строк. Обычно здесь указывается информация о том, в какой момент и что делает приложение. За вывод этих данных отвечает встроенный журнал событий — Logcat.
С помощью Logcat можно узнать, какие запросы уходили на бэкенд, что отвечал бэкенд, какие данные сохранялись в базу данных и многое другое.
Самое главное, что дает Logcat — выводит стэк вызовов функций, в случае если произошла ошибка и приложение упало. Обычно имменно этот стэк вызовов копируется и вместе с условиями воспроизведения вставляется в баг репорт.
Если вы впервые слышите про Logcat и не понимаете, как читать из него данные, самый простой выход — скачать Android Studio, включить “Режим разработчика” на своем тестовом телефоне и подключить по USB девайс к вашему ПК. В Android Studio снизу вы увидите вкладку Logcat, которую надо будет открыть, а потом выбрать девайс и приложение, которое вы тестируете.
Приятный бонус заключается в том, что Logcat можно настроить под задачу: это позволяет делать вкладка “Уровень логгирования”, где можно отслеживать, например, только ошибки. А также можно выводить информацию в журнал по ключевым словам с помощью регулярных выражений.
Стоит упомянуть, что здесь вам также пригодятся знания adb, ведь события из Logcat можно быстро собрать, прописав в консоли “adb logcat”. Приятный бонус!
Однако есть небольшой нюанс: как вы, вероятно, знаете, приложение может быть собранно в друх видах:
“debug” (для тестирования и разработки) и “release” (для релизов в маркет и поставки приложения конечному пользователю).
Важно учитывать, что если приложение находится в “release” сборке, то Logcat не будет иметь доступ к процессу приложения (в соответствии с требованиями безопасности маркетплейса), если не установлены специальные флаги, позволяющие это обойти. В связи с чем и журнал пользовательских логов для такого приложения будет недоступен.
Подводя итог, можно сказать, что Logcat — это самый полезный повседневный инструмент. Logcat поможет понять, когда в приложении что-то идет не так. Весь ход выполнения программы отражен в логах и вам как QA инженеру не обязательно знать языки программирования, чтобы понять, что бизнес требования не соответствуют ожидаемому поведению приложения. Чем больше вы будете знать свое приложение, тем больше профита будет приносить чтение логов. А по стэку ошибки вы сможете “ставить диагноз” эффективнее и давать больше полезной информации в баг репорте.
А в следующей части мы поговорим про особенности сборки Android приложений и как работать с обфусцированными логами.