Я думал тестирование и есть глубокая аналитическая работа.
Как я понимаю цель модели описать то, что нас интересует с точки зрения тестирования.
Это абстракция, на одно окно может быть написана одна модель или несколько. Воспринимайте это как view на таблицы в реляционных базах данных, на пример.
Если нас интересует воркфлоу через несколько окон в котором задействованы отдельные элементы, мы опять же описываем только их ожидаемое поведение и посредством тулы прокладывем все возможные пути использования.
По поводу того, нужно ли автоматизировать всё. Как я понимаю в основу подхода заложено мнение, что мы не знаем где ошибка может произойти. Принцип неопределённости.
Поэтому в виду неопределённости мы используем автоматизацию не как инструмент только лишь повторения сценариев, но и как инструмент исследования.
Например у нас есть датагрид и на него влияют несколько элементов: чекбоксы, дропдаун меню (несколько), поле поиска, фильтры на столбцы и т.д.
Где у нас выпадет ошибка? На одном из элементов или на комбинации? Писать ли все комбинации руками или дать туле сгенерить их?
В традиционном подходе мы пишем во фреймворке как работать со страницей и пишем тесты, которые исполняют различные комбинации этих взаимодействий.
Здесь мы просим тулу сгенерировать и исполнить комбинацию через нашу имплементацию.
Мы в любом случае занимаемся моделированием сценариев. Только тут мы:
- визуализируем их и записываем
- вместо повторяемых размышлений “что я записал в тест, а что ещё нет?” мы просим тулу “сгенерируй мне все возможные шаги взаимодействия с функционалом Н в моделе М” или “сгенерируй мне полное покрытие модели К”
Тест это стимуляция системы и проверка результата.
Автоматическое исполнение теста для меня это автоматическая стимуляция системы и проверка результата.
Я бы оценил ссылку на код самого graphwalker, но ссылаться на прототип и пример использования.
Не вызывает уважения. Это как граммар наци.
В целом спасибо за ваше мнение, я так понял что в целом бенефиты тулы и подхода не достаточно подробно и наглядно описаны.
Что и является одним из порогов для входа.