Я только начинаю в захватывающем мире разработки WPF, будучи разработчиком C++ уже много лет.Тестирование представления в приложении MVFM WPF
Тестирование приложений с богатыми пользовательскими интерфейсами, конечно, всегда было трудным. Одна из проблем, связанных с этим, традиционно заключалась в том, что в большинстве приложений Windows пользовательский интерфейс, логика пользовательского интерфейса и логика приложения полностью взаимозависимы и не могут быть протестированы изолированно.
Я очень привлекателен для подхода MVVM, который позволит мне отделить пользовательский интерфейс от приложения и запустить большое количество автоматических тестов на моих моделях просмотра, под которыми будет вся моя логика, с учетом того, что довольно немой клиент модели представления.
Это все хорошо и хорошо, и аккуратно отделяет тестирование логики приложения от пользовательского интерфейса приложения. НО, он не дает решения для собственно тестирования самого пользовательского интерфейса. Хотя представление, как правило, будет содержать очень мало логики, оно все равно будет содержать огромное количество ошибок различного рода.
Каково современное состояние при тестировании самого представления?
Благодаря Том
Да, поэтому фактическое тестирование пользовательского интерфейса в большинстве случаев будет в большинстве случаев все еще сводиться к довольно ad-hoc-процессу. Меня немного беспокоит, что разработчики напишут множество тестов для своих моделей взглядов, а затем рассмотрят приложение «проверено» и пренебрегают фактическим тестированием пользовательского интерфейса. Даже если в этом нет никакой логики, все еще существует огромное количество белых вещей, которые могут быть неправильными и требуют тестирования. –
Согласовано, это также зависит от организационной структуры. Компания, которой я являюсь сейчас, является крупным предприятием, поэтому они имеют разные уровни тестирования, которые имеют место. От разработчика, аналитика QA ... аналитику SA ...к случайным внешним аудитам, выполненным против различных тестов, которые считались выполненными. Мое личное чувство заключается в том, что при создании пользовательского интерфейса во время разработки происходит много взаимодействия с пользовательским интерфейсом. Это не так запутанно, как можно сказать, как модуль задней части, который просто собирается попасть в более крупную систему. –