Однією з найнеобхідніших навичок QA-інженера під час тестуванні мобільних додатків є зняття логів помилок або ж екстреного завершення роботи тестованого додатку (crash- логів). Сьогодні ми з вами розберемося, що ж таке логи, для чого вони потрібні, і розглянемо деякі способи їх зняття на девайсах з Android. 

Спершу давайте з вами все-таки розберемося, що ж таке логи?

Логи (чи як їх ще називають лог-файли) – це файли, які містять інформацію про роботу сервера або комп'ютера, в які записуються певні дії програми, а також всі дії користувача над нею. Також іноді можна почути україномовний аналог поняття – журнал. 

Для чого взагалі потрібні логи? Їх призначенням є протоколювання операцій, що виконуються пристроєм, для подальшого їх аналізу.

Якщо розглядати значення логів у рамках QA-професії, то для тестувальника ПЗ головним завданням є грамотне витягування цих самих логів при відтворенні помилки для детальнішого опису проблеми. Якщо тестувальник все зробив правильно, то розробникові буде набагато легше розібратися, в чому саме полягає проблема та знайти шляхи її вирішення. 

Тож яким же способом ми можемо зняти логи з Android девайса?

Утиліта «Minimal ADB»

Найпростішим і найшвидшим способом є зняття логів за допомогою LogCat

Процес налаштування умовно можна розділити на три* частини: 

  1. Підготовка пристрою. 
  2. Встановлення «Minimal ADB» на ПК. 
  3. Зняття логів. 

*Надалі перші 2 кроки повторно виконувати не треба. 

Тепер розглянемо ці частини детальніше.

 1. Підготовка пристрою 

Перше, з чого треба почати – це активація режиму розробника на мобільному пристрої. 

Для цього потрібно: 

  1. Перейти до  налаштування пристрою. 
  2. Натиснути кнопку «Про телефон».
  3. Далі натиснути розділ «Відомості про ПЗ».
Розділ "Про-телефон"
Розділ "Відомості про ПЗ"
  1. Швидко натиснути 7 разів на поле «Номер версії».
  1. Повернутися в Налаштування та натиснути на розділ «Параметри розробника».
  1. Активувати перемикач «Налагодження USB».
Розділ "Параметри розробника"
Налагодження USB

Тепер пристрій налагоджений для синхронізації з ПК через Android Debug Bridge.

2. Встановлення «Minimal ADB» на ПК 

Наразі нам необхідно встановити «Minimal ADB» на наш ПК. 

Для цього необхідно: 

  1. Перейти по посиланню Minimal ADB (https://forum.xda-developers.com/showthread.php?t=2317790). 
  2. Завантажити та встановити актуальну версію «Minimal ADB».
Скачать Minimal ADB

3. Зняття логів 

Наразі  у нас є все необхідне для зняття логів. Залишилося всього декілька простих кроків для отримання текстового файлу з логами: 

  1.  Підключити пристрій до ПК через USB (пристрій запросить дозвіл на відладку саме з вашого комп'ютера, якщо відмітити чек-бокс «Завжди дозволяти відладку з цього комп'ютера"», то цей крок в майбутньому повторювати не треба).
Дозвіл на налагодження по USB
  1. Запустити «Minimal ADB». 
  2. Ввести команду adb logcat > D:LogsLog1.txt (файл з логами буде збережений по вказаному шляху). 
  3. Відтворити помилку на девайсі. 
  4. Натиснути поєднання клавіш Ctrl+C на клавіатурі (також можна просто вилучити USB кабель). 

От і все – логи сесії нашого пристрою успішно збережені в текстовий файл myLog.txt. Тепер можна сміливо прикріпити отримані логи до баг-репорту.

Зняття логів за допомогою «Android Studio» 

Також існують інші способи зняття логів з Android девайсів. Є декілька способів за допомогою IDE для розробки мобільних додатків «Android Studio».

Для першого нам знадобиться: 

  1. Завантажити  «Android Studio» з архіву офіційного сайту (оскільки в останніх версіях студії потрібний нам інструмент був видалений, нам необхідно завантажити старішу версію «Android Studio», наприклад 2.3.3. Знайти та завантажити попередні версії можна в архіві)
  2. Встановити «Android Studio» на комп'ютер (надалі перші 2 кроки повторювати не доведеться). 
  3. Створити новий проєкт в «Android Studio» (під час створення нового проєкту треба вірно вказати версію Android девайсу, з якого необхідно зняти логи).
Создать новый проект в Android Studio
  1. Натиснути View → Tools Windows → Android Device Monitor (після цього відкриється вікно «Android Monitor»).
Android Device Monitor
  1. Вибрати опцію «Debug» у випадаючому списку (також бажано активувати режим «Scroll to down»).
Debug
  1. Підключити пристрій через USB (необхідно ввімкнути відладку через USB на мобільному девайсі так, як було описано раніше).
  2. Відтворити помилку на девайсі. 
  3. Вилучити USB-дріт. 
  4. Виділити логи та скопіювати їх (правою клавішею миші → Copy або Ctrl + C)
  5. Створити файл .txt і вставити в нього наші логи. 
  6. Зберегти. 

Тепер у нас є текстовий файл з логами, який можна прикріплювати до баг-репорту.

Для другого способу потрібно: 

  1. Завантажити та встановити останню версію «Android Studio». 
  2. Запустити «Android Studio». 
  3. Підключити пристрій до ПК, заздалегідь увімкнувши відладку через USB. 
  4. Натиснути вкладку LogCat в Android Studio.
Вкладка LogCat
  1. Дочекатися завантаження пристрою.
Загрузка устройства
  1. Вибрати додаток зі списку запущених.
Выбрать приложение из списка запущенных
  1. Скопіювати логи (натиснувши Ctrl+A, а потім Ctrl+C). 
  2. Вставити логи в заздалегідь створений текстовий документ. Документ з логами для прикріплення у баг-репорт готовий.

Для третього способу треба: 

  1. Завантажити та встановити останню версію «Android Studio». 
  2. Запустити один раз «Android Studio» для підвантаження потрібних файлів. 
  3. Підключити пристрій до ПК, заздалегідь ввімкнувши  відладку через USB. 
  4. Зайти в теку Android → sdk → tools → lib → monitor-x86 64. 
  5. Запустити файл monitor.exe (і зробити ярлик на робочий стіл для швидкого доступу). 
  6. Вибрати пристрій.
Выбрать устройство
  1. Вибрати вкладку «LogCat».
Вкладка LogCat 2
  1. Дочекатися повного завантаження логів. 
  2. Скопіювати логи (натиснувши Ctrl+A). 
  3. Натиснути кнопку «Save».
Save
  1. Вибрати потрібний шлях і зберегти. 

Надалі для зняття логів досить буде запустити ярлик monitor.exe, не чекаючи завантаження Android Studio.

Зняття логів – процес досить простий, але вимагає деякого первинного налаштування та практики. 

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