Як написати тестові випадки з прикладами

🚀 Розумний підсумок

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

  • Ключовий принцип: Кожен тестовий випадок повинен перевірити одну вимогу або функцію, документуючи умови, вхідні дані та очікувані результати.
  • Фокус реалізації: Тестери повинні документувати чіткі, покрокові дії та тестові дані для послідовного виконання будь-яким членом команди.
  • Підхід, орієнтований на користувача: Розробляйте тестові випадки з урахуванням потреб кінцевого користувача, забезпечуючи їх відображення реальних сценаріїв та вимог.
  • Гарантія покриття: Використовуйте матриці відстеження, щоб забезпечити перевірку кожної вимоги, уникаючи сліпих зон та максимізуючи охоплення.
  • Виключення релевантності: Уникайте повторення тестових випадків; використовуйте ідентифікатори тестових випадків для посилання на залежності в попередніх умовах.
  • Застосування техніки: Використовуйте такі методи тестування, як аналіз граничних значень та розподіл еквівалентності, щоб зосередитися на областях високого ризику.
  • Управління та відстеження: Використовуйте інструменти керування тестуванням для документування на основі шаблонів, відстеження виконання та автоматичного зв'язування дефектів.

Як писати тестові приклади

Що таке тестовий приклад?

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

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

Добре написаний тестовий випадок допомагає забезпечити:

  • Програмне забезпечення відповідає бізнес-вимоги та вимоги користувачів.
  • Помилки або неочікувані поведінки є спіймали рано.
  • Тестування може бути повторений та переглянутий будь-яким фахівцем з контролю якості.
  • Команди можуть простежувати яку вимогу перевіряє кожен тест.

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

Кроки для створення тестових випадків у ручному тестуванні

Давайте створимо тестовий приклад для сценарію: Перевірте функціональність входу

Створення тестових випадків у ручному тестуванні

Крок 1) Простий тестовий приклад для пояснення сценарію

Тестовий приклад № Тестовий випадок Descriptіон
1 Перевірте відповідь, коли введено дійсну адресу електронної пошти та пароль

Крок 2) Перевірте дані.
Щоб виконати тестовий приклад, вам знадобиться Дані тесту. Додавання нижче

Тестовий приклад № Тестовий випадок Descriptіон Дані тесту
1 Перевірте відповідь, коли введено дійсну адресу електронної пошти та пароль Електронна адреса: guru99@email.com
Пароль: lNf9^Oti7^2h

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

Крок 3) Виконувати дії.
Щоб виконати тестовий приклад, тестувальник повинен виконати певний набір дій на AUT. Це задокументовано нижче:

Тестовий приклад № Тестовий випадок Descriptіон Етапи тестування Дані тесту
1 Перевірте відповідь, коли введено дійсну адресу електронної пошти та пароль 1) Введіть адресу електронної пошти

2) Введіть пароль

3) Натисніть Увійти

Електронна адреса: guru99@email.com

Пароль: lNf9^Oti7^2h

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

Крок 4) Перевірте поведінку AUT.
Метою тестових випадків у тестуванні програмного забезпечення є перевірка поведінки AUT на предмет очікуваного результату. Це необхідно задокументувати, як зазначено нижче.

Тестовий приклад № Тестовий випадок Descriptіон Дані тесту Очікуваний результат
1 Перевірте відповідь, коли введено дійсну адресу електронної пошти та пароль Електронна адреса: guru99@email.com
Пароль: lNf9^Oti7^2h
Вхід має бути успішним

Під час виконання тесту тестер порівнює очікувані результати з фактичними результатами та призначає статус «пройшов» або «не пройшов».

Тестовий приклад № Тестовий випадок Descriptіон Дані тесту Очікуваний результат Фактичний результат Пройти / провалити
1 Перевірте відповідь, коли введено дійсну адресу електронної пошти та пароль Електронна пошта: guru99@email.com Пароль: lNf9^Oti7^2h Вхід має бути успішним Вхід пройшов успішно Проходити

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

Ключові елементи тестового випадку

Стандартний тестовий випадок зазвичай включає:

  1. Ідентифікатор тестового випадку – Унікальний ідентифікатор (наприклад, TC001)
  2. Назва або Descriptіон – Що підтверджує тест
  3. Передумови – Що має бути до початку тестування
  4. Етапи тестування – Точні дії, які потрібно виконати
  5. Дані тесту – Вхідні значення або параметри
  6. Очікуваний результат – Результат, який ви повинні побачити
  7. Фактичний результат – Що насправді сталося
  8. Статус – Пройдено, не пройдено або заблоковано

Тестовий приклад проти тестового сценарію

A тестовий сценарій описує, що потрібно протестувати — широку функціональність або шлях користувача.

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

Простіше кажучи:

  • Тестовий сценарій = Ідея що тестувати.
  • Тестовий випадок = Реалізація про те, як перевірити цю ідею.

Подумайте про це так —

«Якщо тестовий сценарій є назвою розділу, то кожен тестовий випадок — це абзац, який детально пояснює цей розділ».

Приклад ілюстрації:

Візьмемо приклад, щоб було зрозуміліше:

Тестовий сценарій:

«Перевірте функцію входу на вебсайт».

Пов'язані тестові випадки:

  1. Підтвердьте вхід, використовуючи дійсне ім'я користувача та пароль.
  2. Перевірте повідомлення про помилку з недійсним паролем.
  3. Підтвердьте вхід, виконуючи дії порожніми полями.
  4. Поле перевірки пароля приховує введений текст.

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

Читайте більше інформації про Різниця між тестовим випадком та тестовим сценарієм

Переваги написання високоякісних тестових випадків

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

Типові помилки, яких слід уникати під час написання тестових випадків

Навіть досвідчені тестувальники роблять невеликі помилки, які послаблюють якість тестування.

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

  1. Написання нечітких кроків: Неоднозначні інструкції на кшталт «перевірити сторінку входу» бентежать тестувальників. Використовуйте чіткі кроки, що ґрунтуються на діях.
  2. Пропускання негативних сценаріїв: Завжди включайте недійсні вхідні дані або граничні тести, щоб забезпечити повне покриття.
  3. Повторне використання нечітких тестових даних: Немарковані або суперечливі дані роблять результати тестів ненадійними. Ведіть спільний аркуш даних тестів.
  4. Надмірне ускладнення тестових випадків: Довгі, багатоетапні справи важко підтримувати. Зосередьтеся на кожній справі та зосередьтеся на ній.
  5. Ігнорування оновлень після змін у продукті: Застарілі тестові випадки створюють хибні результати. Revпереглядати та регулярно переглядати.
  6. Відсутність відстеження: Завжди пов'язуйте тестові випадки з вимогами, щоб відстежувати покриття та відповідність.
  7. Пропускання експертних оцінок: Свіжий погляд рано помічає нечіткі або зайві кроки.

Поширені запитання

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

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

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

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

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

Claude та ChatGPT можуть бути потужними союзниками для написання тестових випадків. Обидва можуть аналізувати вимоги, генерувати детальні або параметризовані тестові сценарії, пропонувати граничні випадки та навіть конвертувати вхідні дані природною мовою у структуровані тестові скрипти (наприклад, Gherkin або pytest).

Підсумуйте цей пост за допомогою: