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

Що таке тестування варіантів використання?
Тестування варіантів використання – це метод тестування програмного забезпечення, який визначає тестові випадки, що охоплюють усю систему для кожної транзакції окремо, від початку до кінця. Тестові випадки описують взаємодію між користувачами та програмним застосунком. Тестування варіантів використання виявляє прогалини, які можуть бути не виявлені шляхом тестування окремих компонентів програмного забезпечення окремо.
A використання випадку У тестуванні це короткий опис конкретного використання програмного забезпечення учасником або користувачем. Варіанти використання пишуться на основі дій користувача та відповідних відповідей програми, і вони широко використовуються для отримання тестові справи на системному рівні та рівні прийняття.
Ключові компоненти варіанту використання
Кожен варіант використання побудований з одного й того ж набору будівельних блоків. Попереднє знання складових полегшує розробку покриття, яке чітко відповідає тестовим варіантам:
- Актор: користувач або зовнішня система, яка ініціює взаємодію. У текстових потоках позначається як «A».
- Система: тестоване програмне забезпечення, яке реагує на актор. Позначається як «S».
- Передумови: стан, у якому система повинна знаходитися, перш ніж можна буде розпочати виконання варіанту використання.
- Основний сценарій успіху: послідовність щасливого шляху кроків актора та системи.
- Розширення / альтернативні потоки: гілки, що обробляють винятки, помилки перевірки або альтернативні варіанти.
- Пост-умови: стан, у якому система залишається після завершення сценарію використання.
Як виконати тестування варіантів використання: приклад
У випадку використання актор представлений як «A», а система як «S». У наведеному нижче прикладі описано функцію входу у вебзастосунок.
| Основний сценарій успіху | Крок | Опис |
|---|---|---|
| A: Актор S: Система | 1 | A: Введіть ім'я агента та пароль |
| 2 | S: Підтвердити пароль | |
| 3 | S: Дозволити доступ до облікового запису | |
| розширення | 2a | Пароль недійсний S: Відобразити повідомлення та попросити повторити спробу (до 4 разів) |
| 2b | Пароль недійсний 4 рази S: Закрийте програму |
Наведений вище потік описує один щасливий шлях та два його розширення. Читаємо його крок за кроком:
- Актор вводить електронну пошту та пароль як перший крок наскрізного процесу входу.
- Система перевіряє пароль.
- Якщо пароль правильний, доступ надається.
- Якщо пароль недійсний, система відобразить повідомлення та запропонує до чотирьох спроб повторити введення.
- Якщо пароль залишається недійсним після чотирьох спроб, система блокує подальші спроби (у цьому прикладі шляхом заборони IP-адреси).
З цього випадку використання ви б протестували сценарій успіху плюс один випадок кожного розширення. Це дає щонайменше три тестові випадки: дійсний логін, відновлюваний недійсний пароль та блокування після повторних невдач.
Переваги тестування варіантів використання
Тестування варіантів використання природно вписується між вимогами та тестовими варіантами. Ключові переваги:
- Повне покриття: тестує транзакції між модулями, а не ізольованими функціями.
- Перевірка, орієнтована на користувача: кожен сценарій відображає те, як реальний актор використовує систему.
- Прозорі tracможливість: варіанти використання безпосередньо відповідають критеріям прийняття для схвалення зацікавленими сторонами.
- Профілактика дефектів: виявляє прогалини інтеграції поверхонь перед початком циклів регресії.
- Багаторазові артефакти: той самий варіант використання забезпечує тестові випадки, навчальні матеріали та документацію користувача.
Обмеження тестування варіантів використання
Цей метод є потужним, але не вичерпним. Майте на увазі наступні обмеження:
- Не замінює модульне тестування: Несправності компонентів низького рівня все ще потребують цілеспрямованих тестів.
- Залежить від точних випадків використання: неоднозначні потоки породжують неоднозначні тести.
- Обмежено для нефункціонального покриття: продуктивність, безпека та доступність потребують власних методів.
- Накладні витрати на технічне обслуговування: Варіанти використання необхідно оновлювати, коли змінюються бізнес-правила.

