Тестування таблиці рішень (приклад)

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

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

  • 🧮 Основна ідея: Таблиця рішень відображає умови (причини) з результатами (наслідками) для систематичного охоплення.
  • 🔢 Правило комбінації: Кількість правил дорівнює 2, піднесеній до кількості умов (2^n).
  • 🔐 Приклади виконаних робіт: Екрани входу та завантаження фотографій показують умови True/False, зіставлені з виходами.
  • Найкраще використовувати: Ідеально, коли поведінка системи відрізняється для кожної комбінації вхідних даних.
  • 🤖 Впровадження штучного інтелекту: Інструменти штучного інтелекту тепер генерують таблиці рішень на основі вимог та видаляють зайві правила.

Тестування таблиці рішень

Що таке тестування таблиці рішень?

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

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: Таблиця рішень для екрана завантаження

Тепер розглянемо діалогове вікно, яке просить користувача завантажити фотографію за певних умов:

  1. Дозволено лише формат «.jpg».
  2. Розмір файлу має бути менше 32 КБ.
  3. Роздільна здатність має бути 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
Вихід Фото завантажено Невідповідність роздільної здатності Невідповідність розмірів Невідповідність розміру та роздільної здатності Невідповідність формату Невідповідність формату та роздільної здатності Невідповідність формату та розміру Невідповідність формату, розміру та роздільної здатності

З цієї таблиці можна створити вісім тестових випадків для повного покриття:

  1. .jpg, < 32 КБ, 137×177 → фото успішно завантажено.
  2. .jpg, < 32 КБ, не 137×177 → помилка невідповідності роздільної здатності.
  3. .jpg, ≥ 32 КБ, 137×177 → помилка невідповідності розміру.
  4. .jpg, ≥ 32 КБ, не 137×177 → помилка невідповідності розміру та роздільної здатності.
  5. Не .jpg, < 32 КБ, 137×177 → помилка невідповідності формату.
  6. Не .jpg, < 32 КБ, не 137×177 → помилка невідповідності формату та роздільної здатності.
  7. Не .jpg, ≥ 32 КБ, 137×177 → помилка невідповідності формату та розміру.
  8. Не .jpg, ≥ 32 КБ, не 137×177 → помилка невідповідності формату, розміру та роздільної здатності.

Чому важливе тестування таблиць рішень

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

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

Ця таблиця також слугує орієнтиром для розробки вимог та функціональності, оскільки її легко зрозуміти та вона охоплює всі комбінації. Її значення зростає зі збільшенням вхідних даних: кількість можливих комбінацій дорівнює 2^n, де n – кількість вхідних даних. Для n = 10, що є поширеним явищем у веб-формах, це 1,024 комбінації. Ви не можете перевірити їх усі, але можете вибрати багату підмножину за допомогою тестування на основі рішень.

Переваги тестування таблиці рішень

  • Працює, коли поведінка системи відрізняється для різних вхідних даних, де розподіл еквівалентності та аналіз граничних значень є недостатніми.
  • Представлення просте, тому його легко інтерпретувати та воно корисне як для команд розробників, так і для бізнес-команд.
  • Допомагає створювати ефективні комбінації та забезпечує краще покриття тестами.
  • Будь-яку складну бізнес-ситуацію можна перетворити на таблицю рішень.
  • Може забезпечити 100% покриття, коли кількість вхідних комбінацій невелика.

Недоліки тестування таблиці рішень

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

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

Тестування таблиць рішень – це метод «чорної скриньки», який фіксує комбінації вхідних умов та їх очікуваних результатів у таблиці. Він забезпечує систематичне покриття складних бізнес-правил.

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

Кількість правил дорівнює 2^n, де n – кількість бінарних умов. Наприклад, 4 умови дають 16 правил, а 10 умов – 1,024 можливі комбінації.

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

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

Зі зростанням кількості умов таблиця розширюється експоненціально (2^n) і стає важкою в управлінні. Тестери зазвичай вибирають репрезентативну підмножину правил, а не тестують кожну комбінацію.

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

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

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