Тестирование таблицы переходов – это метод тестирования «черного ящика», который используется там, где некоторый аспект системы может быть описан в так называемом «конечном автомате». Это просто означает, что система может находиться в (конечном) числе разных состояний, а переходы из одного состояния в другое определяются правилами «машины».
Это модель, на которой базируются система и тесты. Любая система, в которой вы получаете другие выходные данные для одного и того же ввода, является системой с конечным состоянием.
Кстати, наши курсы Тестирования ПО в Минске тщательно разбирают этот вопрос.
Примеры тестирования таблицы переходов.
Если вы попросите снять 100 фунтов стерлингов с банковского банкомата, вам могут быть выданы наличные. Позже вы можете сделать точно такой же запрос, но вам будет отказано в деньгах (потому что вашем балансе недостаточно средств).
Этот более поздний отказ объясняется тем, что состояние вашего банковского счета изменилось с достаточного количества средств для их вывода к нехватке средств. Транзакция, которая привела к изменению вашего состояния вашего счета, была, вероятно, более ранним выходом.
Другим примером является текстовый процессор. Если документ открыт, вы можете его закрыть. Если ни один документ не открыт, то «Закрыть» недоступен. После того, как вы выберите «Закрыть» один раз, вы не можете выбрать его снова для того же документа, если вы не откроете этот документ. Таким образом, документ имеет два состояния: открытое и закрытое.
Модель перехода состояний состоит из четырех основных частей:
-
Состояния, которые может принимать программное обеспечение (открытые / закрытые или финансируемые / недостаточные фонды);
-
Переходы из одного состояния в другое (разрешены не все переходы);
-
Действия, которые вызывают переход (вывод денег, закрытие файла);
-
Действия, которые возникают в результате перехода (сообщение об ошибке или получение денежных средств).
Обратите внимание, что переход не должен изменяться. Он может оставаться в том же состоянии. Фактически, попытка ввода недопустимого ввода, скорее всего, приведет к появлению сообщения об ошибке в качестве действия, но переход будет в том же состоянии, в котором система была до этого.
Получение тестовых сценариев из модели перехода между состояниями является методом «черного ящика». Процесс измерения того, насколько вы протестировали (охватили), близок к процессу тестирования белого ящика. Тем не менее, тестирование переходного состояния обычно рассматривается как метод черного ящика.
Вы можете проектировать тесты для проверки каждого перехода, показанного в модели. Если проверяется каждый (действительный) переход, это называется покрытием «0-переключателя».
Вы также можете проверить ряд переходов через более чем одно состояние. Если вы охватили все пары из двух допустимых переходов, вы бы имели покрытие «1-переключатель», охватывая наборы из 3-х переходов, обеспечив покрытие «2-коммутатора» и т. Д.
Однако вывод тестов только из модели может опустить отрицательные тесты, в которых мы могли бы попытаться генерировать недопустимые переходы. Чтобы увидеть общее количество комбинаций состояний и переходов, действительных и недействительных, можно использовать таблицу состояний.
Запишитесь на наши курсы Тестирования ПО в Минске прямо сейчас или закажите звонок с бесплатной консультацией!
Запишитесь прямо сейчас или закажите звонок с бесплатной консультацией!
Записаться сейчас / Бесплатная консультация