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

Що таке тестування таблиці рішень?
Тестування таблиць рішень – це метод тестування програмного забезпечення, який використовується для перевірки поведінки системи для різних комбінацій вхідних даних. Це систематичний підхід, за якого різні комбінації вхідних даних та відповідна їм поведінка системи (вихід) фіксуються у табличній формі. Саме тому його також називають Причина-Наслідок таблиця, де записані причини та наслідки для кращого охоплення тестуванням.
A Таблиця рішень – це табличне представлення вхідних даних у порівнянні з правилами, випадками або умовами тестування. Це дуже ефективний інструмент як для складних тестування програмного забезпечення та управління вимогами. Таблиця рішень допомагає перевірити всі можливі комбінації умов, а тестувальники можуть легко виявити відсутні умови. Умови позначаються за допомогою значень True (T) та False (F).
Приклад 1: Таблиця рішень для екрана входу
Давайте створимо таблицю рішень для екрана входу.
Умова проста: якщо користувач вводить правильне ім'я користувача та пароль, його перенаправляють на головну сторінку. Якщо будь-яке введення неправильне, відображається повідомлення про помилку.
| Conditions | правило 1 | правило 2 | правило 3 | правило 4 |
|---|---|---|---|---|
| Ім'я користувача (T/F) | F | T | F | T |
| Пароль (T/F) | F | F | T | T |
| Вихід (E/H) | E | E | E | H |
Легенда:
- T – Правильний логін/пароль
- F – Неправильний логін/пароль
- E – Відображається повідомлення про помилку
- H – Відображається головний екран
Інтерпретація:
- Справа 1 – Ім’я користувача та пароль неправильні. Користувачеві відображається повідомлення про помилку.
- Справа 2 – Ім’я користувача правильне, пароль неправильний. Користувачеві відображається повідомлення про помилку.
- Справа 3 – Ім’я користувача неправильне, пароль правильний. Користувачеві відображається повідомлення про помилку.
- Справа 4 – Ім’я користувача та пароль правильні. Користувач переходить на головну сторінку.
Під час перетворення цього на тестовий випадок, ви можете створити два сценарії, оскільки всі три випадки помилок перевіряють одне й те саме правило.
- Введіть правильне ім’я користувача та пароль, а потім натисніть «Увійти» — користувач має перейти на головну сторінку.
- Введіть неправильне ім’я користувача та/або неправильний пароль, а потім натисніть «Увійти» — користувач має побачити повідомлення про помилку.
Приклад 2: Таблиця рішень для екрана завантаження
Тепер розглянемо діалогове вікно, яке просить користувача завантажити фотографію за певних умов:
- Дозволено лише формат «.jpg».
- Розмір файлу має бути менше 32 КБ.
- Роздільна здатність має бути 137 × 177.
Якщо будь-яка умова не виконується, система видає відповідне повідомлення про помилку; якщо всі умови виконано, фотографія успішно завантажується.
Таблиця рішень для цього випадку наведена нижче.
| Conditions | Справа 1 | Справа 2 | Справа 3 | Справа 4 | Справа 5 | Справа 6 | Справа 7 | Справа 8 |
|---|---|---|---|---|---|---|---|---|
| сформований | . Jpg | . Jpg | . Jpg | . Jpg | Не .jpg | Не .jpg | Не .jpg | Не .jpg |
| Розмір | < 32 КБ | < 32 КБ | ≥ 32 КБ | ≥ 32 КБ | < 32 КБ | < 32 КБ | ≥ 32 КБ | ≥ 32 КБ |
| дозвіл | 137 × 177 | Не 137×177 | 137 × 177 | Не 137×177 | 137 × 177 | Не 137×177 | 137 × 177 | Не 137×177 |
| Вихід | Фото завантажено | Невідповідність роздільної здатності | Невідповідність розмірів | Невідповідність розміру та роздільної здатності | Невідповідність формату | Невідповідність формату та роздільної здатності | Невідповідність формату та розміру | Невідповідність формату, розміру та роздільної здатності |
З цієї таблиці можна створити вісім тестових випадків для повного покриття:
- .jpg, < 32 КБ, 137×177 → фото успішно завантажено.
- .jpg, < 32 КБ, не 137×177 → помилка невідповідності роздільної здатності.
- .jpg, ≥ 32 КБ, 137×177 → помилка невідповідності розміру.
- .jpg, ≥ 32 КБ, не 137×177 → помилка невідповідності розміру та роздільної здатності.
- Не .jpg, < 32 КБ, 137×177 → помилка невідповідності формату.
- Не .jpg, < 32 КБ, не 137×177 → помилка невідповідності формату та роздільної здатності.
- Не .jpg, ≥ 32 КБ, 137×177 → помилка невідповідності формату та розміру.
- Не .jpg, ≥ 32 КБ, не 137×177 → помилка невідповідності формату, розміру та роздільної здатності.
Чому важливе тестування таблиць рішень
Тестування таблиць рішень важливе, оскільки воно перевіряє багато комбінацій умов і забезпечує надійне покриття для складної бізнес-логіки. Коли поведінка системи відрізняється для кожного набору вхідних даних, цей метод забезпечує хороше покриття у простому, легкому для читання представленні.
In розробка програмного забезпечення, аналіз граничних значень та розбиття еквівалентності є подібними методами, але вони найефективніші, коли система показує то ж поведінка на великому наборі вхідних даних. Коли поведінка є різний для кожної комбінації вхідних даних ці методи не можуть забезпечити належне покриття, і тестування таблиць рішень стає кращим варіантом.
Ця таблиця також слугує орієнтиром для розробки вимог та функціональності, оскільки її легко зрозуміти та вона охоплює всі комбінації. Її значення зростає зі збільшенням вхідних даних: кількість можливих комбінацій дорівнює 2^n, де n – кількість вхідних даних. Для n = 10, що є поширеним явищем у веб-формах, це 1,024 комбінації. Ви не можете перевірити їх усі, але можете вибрати багату підмножину за допомогою тестування на основі рішень.
Переваги тестування таблиці рішень
- Працює, коли поведінка системи відрізняється для різних вхідних даних, де розподіл еквівалентності та аналіз граничних значень є недостатніми.
- Представлення просте, тому його легко інтерпретувати та воно корисне як для команд розробників, так і для бізнес-команд.
- Допомагає створювати ефективні комбінації та забезпечує краще покриття тестами.
- Будь-яку складну бізнес-ситуацію можна перетворити на таблицю рішень.
- Може забезпечити 100% покриття, коли кількість вхідних комбінацій невелика.
Недоліки тестування таблиці рішень
Основним недоліком є те, що зі збільшенням кількості вхідних даних таблиця стає складнішою та важчою в управлінні.


