Тестування переходу стану – діаграма та техніка (приклад)

Що таке тестування переходу між станами?

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

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

Техніка тестування переходу стану допомагає там, де потрібно тестувати різні системні переходи.

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

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

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

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

Чотири частини діаграми переходу стану

Нижче наведено 4 основні компоненти моделі переходу між державами

1) Держави які може отримати програмне забезпечення

Штати

2) Перехід з одного стану в інший

Transition

3) Події які викликають перехід, наприклад закриття файлу або зняття грошей

Події

4) Дії які є результатом переходу (повідомлення про помилку або отримання готівки).

Дії

Діаграма переходів станів і Таблиця переходів станів

Існує два основних способи представлення або проектування переходу стану: діаграма переходу стану та таблиця переходу стану.

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

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

Як здійснити перехід стану (приклади переходу стану)

Приклад 1:

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

У цій системі, якщо користувач вводить дійсний пароль під час будь-якої з перших трьох спроб, користувач успішно ввійде в систему. Якщо користувач вводить недійсний пароль під час першої чи другої спроби, йому буде запропоновано ввести пароль повторно. І, нарешті, якщо користувач вводить неправильний пароль 3rd час обліковий запис буде заблоковано.

Діаграма переходу станів

Діаграма переходу станів

На діаграмі кожного разу, коли користувач вводить правильний PIN-код, він переходить у стан доступу надано, і якщо він вводить неправильний пароль, він переходить до наступної спроби, і якщо він робить те саме для 3rd час досягнення стану блокування облікового запису.

Таблиця переходів станів

Правильний PIN-код Неправильний PIN-код
S1) Початок S5 S2
S2) 1st спроба S5 S3
S3) 2nd спроба S5 S4
S4) 3rd спроба S5 S6
S5) Доступ надано - -
S6) Обліковий запис заблоковано - -

У таблиці, коли користувач вводить правильний PIN-код, стан переходить до S5, тобто Доступ надано. І якщо користувач вводить неправильний пароль, він переходить до наступного стану. Якщо він робить те саме 3rd час, він дійде до стану блокування облікового запису.

Приклад 2:

Перегляньте це відео перевірки переходу між станами, перш ніж перейти до прикладу нижче:

Натисніть тут якщо відео недоступне

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

Граф переходу стану
Граф переходу стану

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

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

Графи станів допомагають визначити дійсні переходи для перевірки. У цьому випадку тестування з правильним паролем і з неправильним паролем є обов’язковим. Для тестові сценарії, увійдіть на 2nd, 3rd і 4th будь-хто міг бути перевірений.

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

Таблиця переходів станів

У таблиці станів усі дійсні стани перераховані в лівій частині таблиці, а події, які їх викликають, у верхній.

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

Наприклад, коли ви вводите правильний пароль у стані S1, ви переходите до стану S6 (Доступ надано). Припустімо, якщо ви ввели неправильний пароль з першої спроби, ви перейдете до стану S3 або 2nd Try.

Таким же чином можна визначити всі інші стани.

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

Переваги та недоліки техніки переходу між станами

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

Підсумки

  • Тестування переходу стану визначається як техніка тестування, у якій зміни умов введення спричиняють зміни стану в тестованій програмі.
  • In Розробка програмного забезпечення, Техніка перевірки переходів між станами корисна, коли потрібно протестувати різні переходи системи.
  • Два основних способи представлення або проектування переходу стану: діаграма переходу стану та таблиця переходу стану.
  • На діаграмі переходів станів стани показані в рамках, а перехід представлено стрілками.
  • У таблиці переходів станів усі стани перераховані зліва, а події описані зверху.
  • Ця головна перевага цієї методики тестування полягає в тому, що вона забезпечить графічне або табличне представлення поведінки системи, яке змусить тестувальника охопити та ефективно зрозуміти поведінку системи.
  • Основний недолік цієї методики тестування полягає в тому, що ми не можемо покладатися на неї кожного разу.