Тест-дизайн “Диаграмма состояний и переходов”
Привет, охотники!🏹
Сегодня поговорим о технике тест-дизайна, которая помогает визуализировать процессы, происходящие с объектами - диаграмма состояний и переходов
Глобально эта схема состоит из 2х видов элементов - кружочки (объект/его состояние) и стрелочки (процессы для переходов от одного состояния к другому). Каждый переход от кружочка к кружочку - это возможный кейс, в котором скрыт баг
Объясню на примере книги Состояние 1: книги нет Процесс: автор пишет книгу
Состояние 2: книга написана Процесс: издательство отклоняет книгу ИЛИ Процесс: издательство публикует книгу
Тут уже происходит разветвление и появляется два возможных параллельных состояния
Состояние 3.1: книга на доработке (или книга может вернуться в Состояние 2) Состояние 3.2: книга напечатана
Процессы далее могут так же двоиться, троиться и т.д. Но важно не потерять их и прописать все возможные кейсы, которые есть в документации
А еще важно находить “дублирование состояний”. Как я указала в примере выше: после отклонения книги издательством автор может отнести ее другому менеджеру, может что-то дописать или исправить. А состояние “книга написана” будет одинаковым
Чтобы не рисовать гигантские схемы, можно делать к ним несколько подходов и упрощать. Еще лайфхак: разделите схему на несколько этапов поменьше, тогда каждый уровень будет проще считываться. Например, с той же книгой: есть этап написания книги и ее редактирования, есть подготовка к публикации и печать, а есть маркетинг и продажи
Такая техника тест-дизайна помогает структурировать, что вообще можно делать в приложении (с объектом), и что мы ожидаем получить в результате