Перейти до основного контенту

Вимоги до звіту про баг

Як правильно задокументувати баг і які стандарти дотримує Test IO?

Автор: Kostya

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

  • Якщо ви повідомляєте про функціональний баг, спочатку потрібно обрати один із доступних рівнів критичності (Severity) перед заповненням решти звіту.

  • Заголовок (Title) має коротко описувати помилку та містити необхідну інформацію, щоб зрозуміти проблему без відкриття звіту про помилку. Необхідна інформація включає те, що сталося, де виникла помилка, а також коли, як або за яких умов вона була спричинена.

  • URL — має бути адресою вебсторінки, на якій виникла помилка. Ви можете просто скопіювати URL з адресного рядка браузера..

  • Задокументуйте кроки, які після виконання дозволяють відтворити помилку.

  • Фактичний результат (Actual Result) — це одне або кілька речень, які пояснюють, що сталося після останньої дії. Також можна додати результати попередніх дій, якщо вони важливі для розуміння проблеми. Він не повинен повторювати заголовок.

  • Подумайте, що мало б статися, якби помилки не існувало, і запишіть це очікування в полі Очікуваний результат (Expected Result).

  • Додайте вкладення, яке показує помилку, щоб наочно продемонструвати її та підтвердити її існування.

  • Наприкінці оберіть правильне середовище тестування (Used Environment) та браузер (якщо це застосовно), враховуючи пристрій, з якого вас запросили тестувати під час прийняття циклу.

Першим кроком у формі звіту про баг має бути вибір правильної Функції (Feature). Якщо ви не знаходите потрібну функцію у випадаючому списку, поверніться на сторінку огляду тесту, прочитайте всі описи функцій і позначте їх як прочитані. Після цього поверніться до форми звіту — усі функції з’являться у списку для вибору.

Форма помилки

Після вибору Функції (Feature) уся форма для звіту про баг стане доступною для заповнення. Наприклад, форма для функціональних багів виглядає так:

Ви маєте заповнити кожне поле форми звіту про баг правильною та конкретною інформацією відповідно до наших стандартів якості. Детальніша інформація про кожне поле та вимоги до нього наведена нижче.

Рівень критичності (Severity)

Для функціональних багів доступне додаткове поле Рівень критичності (Severity): Low (низький), High (високий) та/або Critical (критичний). Рівень критичності вказує на терміновість вашого звіту і залежить від кількох факторів. Щоб дізнатися більше про різні рівні критичності, будь ласка, ознайомтеся зі статтею Функціональні баги.

Поле Рівень критичності (Severity) не відображатиметься для інших типів багів.

Заголовок

Заголовок звіту про помилку має коротко описувати помилку, щоб читач міг отримати загальне уявлення про проблему, лише прочитавши заголовок. Йому не повинно бути потрібно читати весь звіт, щоб зрозуміти, у чому полягає помилка. Заголовок звіту про помилку має бути точним і лаконічним.

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

  • Що сталося?

  • Де виникла помилка?

  • Коли, як або за яких умов вона була спричинена?

Пишучи заголовок, описуйте, що саме відбувається, а не що не відбувається. Заголовок ніколи не повинен говорити, що щось “не працює”, інакше читач не зможе зрозуміти, що саме відбувається.

Заголовки повинні відображати реальну проблему. Якщо баг виникає лише за певних умов, ці умови мають бути зазначені у заголовку. Наприклад, якщо ви не можете забронювати квиток, коли зазначаєте, що ви підліток, ця інформація є важливою і повинна бути в заголовку.

Щоб створити описовий заголовок, поставте себе на місце людини, яка ніколи не тестувала цей сайт чи додаток, не уявляє, на якій сторінці ви перебуваєте, як вона виглядає і що ви робили. Прочитайте свій заголовок з цієї точки зору — чи зможете ви зрозуміти баг? Якщо ні, відкоригуйте заголовок і повторіть процес.

Приклади правильних заголовків багів

Правильно

Неправильно

Під час надсилання замовлення через PayPal на сторінці Checkout відображається повідомлення про помилку

Checkout не працює

Сторінка Cart відображає помилку 404, коли її відкриває авторизований користувач

Сторінка Cart відображає помилку 404

URL

Перейдіть на сторінку, де з'являється помилка, і скопіюйте та вставте URL з адресного рядка браузера в поле URL у формі звіту про помилку. URL має бути дійсним.

Приклади

Сценарій

Правильний URL

Неправильний URL

Кнопка «Add to Cart» не реагує на сторінці PDP

URL сторінки деталей товару (PDP), на якій було натиснуто кнопку. Приклад: https://www.example.com/product/running-shoes

URL будь-якої іншої сторінки

Посилання перенаправляє на сторінку 404

URL сторінки, яка містить непрацююче посилання. Приклад: https://www.example.com/sale

URL сторінки 404. Приклад: https://www.example.com/404

Кроки для відтворення

Баги мають бути відтворюваними, тому потрібен детальний покроковий опис, як їх можна відтворити. Кожен крок повинен описувати окрему дію.

Зверніть увагу, що нумерація кроків не обов’язкова — це робить наша система автоматично.

Перший крок має містити вказівку перейти за URL середовища замовника, наданим у розділі Access, якщо ви тестуєте вебсайт, або вказівку відкрити застосунок (із зазначенням його назви), якщо ви тестуєте мобільний застосунок. Приклад:

Для вебсайтів:

  1. Відкрийте https://test.io/

Для мобільних застосунків:

  1. Відкрийте застосунок testNow

Усі наступні кроки мають описувати ваші дії від початкового кроку до моменту виникнення помилки — які кнопки ви натискаєте, за якими посиланнями переходите та що вводите. Ваш останній крок має описувати дію, яку ви виконуєте і яка призводить до виникнення помилки.

Ваші кроки мають бути максимально загальними. Лише якщо баг виникає за конкретних умов (наприклад, тільки на певній сторінці продукту, з певним фільтром чи конкретним введенням), зазначте цю умову у кроках. Наприклад, не описуйте конкретну сторінку продукту чи конкретний товар, який ви додали до кошика, якщо проблема виникає для будь-якого товару. Це допоможе читачеві зрозуміти суть бага, не відволікаючись на зайві деталі.

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

Приклад правильних кроків

  1. Перейдіть на сторінку http://www.examplewebsite.com

  2. Введіть будь-який пошуковий запит у верхньому правому рядку пошуку (наприклад, «Сан-Франциско»)

  3. Натисніть кнопку «Шукати зараз».

  4. Прокрутіть вниз і натисніть «Сортувати за»

  5. Виберіть опцію «Сортувати за ціною: від високої до низької»

Фактичний результат

Фактичний результат — це одне з найважливіших полів у звіті про баг, оскільки саме тут ви пояснюєте, у чому полягає проблема, та надаєте всі необхідні деталі для розуміння бага.

Те, що фактично відбувається після виконання покрокового керівництва, має бути описано якомога детальніше. Намагайтеся бути дуже точними і не використовувати занадто загальні формулювання, наприклад, замість того, щоб сказати, що продукти в основному залишаються у тому ж порядку після застосування методу сортування X, наведіть конкретні приклади продуктів, які розташовані неправильно. Додайте до цього поля будь-яку інформацію, яка стосується бага, наприклад, приклади, додаткові умови, виключення чи результати інших важливих дій, якщо це необхідно. Головне — структуровано подати інформацію, щоб допомогти читачеві зрозуміти ваш хід думок.

Важливі зауваження: фактичний і очікуваний результати ніколи не повинні бути просто протилежними одне одному. Очікування того, що мало б статись, і те, що сталося насправді, суттєво відрізняються.

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

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

Правильно

Неправильно

Повідомлення «Error 500 – Internal Server error – Sorry something went wrong» відображається після спроби перейти на сторінку оформлення замовлення.

Помилка відображається на сторінці кошика після натискання кнопки Оформити замовлення.

У верхньому правому куті сторінки товару (PDP) з’являється повідомлення про помилку «Unexpected Error», і товар не додається до кошика.

Користувач не може додати товар у кошик, відображається помилка.

Очікуваний результат

Опишіть, що, на вашу думку, має статися після виконання останнього описаного вами кроку. Подумайте, що мало б статися, якби ви не зіткнулися з помилкою — якби все працювало правильно.

Очікуваний результат має містити короткий опис, але для складних помилок може знадобитися додаткова інформація.

Пам’ятайте, що очікуваний результат — це не те саме, що фактичний результат з незначними змінами або запереченнями. Це окреме поле, призначене для того, щоб ви могли пояснити все, що мало б статися після виконання останнього кроку для відтворення помилки.

Приклади очікуваного результату

Правильно

Неправильно

Сторінка Checkout має успішно завантажитися.

Користувача має бути правильно перенаправлено на сторінку Checkout, де він повинен мати змогу додати інформацію про доставку та оплату й оформити замовлення.

«Batman T-Shirt» має бути додано до кошика, щоб користувач міг продовжити оформлення замовлення.

Товар «Batman T-Shirt» має бути успішно додано до кошика. Користувач не повинен стикатися з помилками на кшталт «Error 500» і повинен мати змогу оформити замовлення на будь-які товари у своєму кошику.

Вкладений файл (Attachment)

Щоб дізнатися, який тип вкладення потрібно прикріпити до вашої помилки та які правила застосовуються, перегляньте таку статтю: Вимоги до вкладень звіту про помилку.

Використане середовище

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

Ви можете використовувати лише ті пристрої для тестування, які вказані у цьому розділі. Крім того, ви повинні обирати лише один пристрій або браузер при створенні звіту про баг і додавати вкладення тільки для нього. Якщо ви можете відтворити баг на інших пристроях або в інших браузерах — згадайте про це у полі Actual result.

Вибір правильного середовища, в якому виникає баг, є обов’язковим. Перед тим як надіслати звіт, переконайтесь, що ви вибрали правильне середовище. Якщо ви випадково обрали неправильне, його можна виправити після надсилання звіту — до того, як його перевірить тимлід. Якщо у звіті буде вказано неправильне середовище, тимлід відхилить його під час перевірки.

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

Примітка: якщо ви видалите пристрій, для якого отримали запрошення на тестування, зі списку пристроїв у своєму профілі тестувальника, ви більше не зможете надсилати звіти у цьому тесті. Розділ "Середовище" у формі бага буде порожнім, і форма не зможе бути надіслана. Видалення пристрою з профілю неможливо скасувати після того, як ви прийняли запрошення на тест.

Покращення звіту

Після надсилання звіту ви все ще можете редагувати всі поля, крім обраного типу бага. Ви завжди повинні надсилати повністю заповнені звіти, готові до перевірки, і використовувати функцію редагування лише у випадку, якщо ви допустили незначну помилку або хочете переформулювати текст для покращення якості звіту.

Пам’ятайте, що використання тимчасових або порожніх даних (плейсхолдерів) заборонене, тому не надсилайте неповні звіти з наміром допрацювати їх пізніше.

Якщо баг виникає лише за певного вводу, використовуйте слова та фрази, які міг би використати реальний користувач, і уникайте випадкового набору символів. Наприклад, створюючи акаунт на стороні клієнта, не слід використовувати імена на кшталт “asdsdfkg_lajsdh”, оскільки це виглядає непрофесійно та погіршує якість звіту.

Якщо ви надіслали звіт помилково, ви можете його видалити, але тільки до того моменту, поки його не переглянув тимлід.

Ви отримали відповідь на своє запитання?