Иногда графический интерфейс не такой уж тупой. Например, может быть поддержка перетаскивания, пользовательские компоненты, которые отображают свое содержимое в зависимости от того, где они размещены, и многое другое. В этом случае эти вещи должны быть специально протестированы как в интеграционных тестах, так и индивидуально в модульных тестах.
Большую часть времени интеграционные тесты начинаются с уровня пользовательского интерфейса, и мы заканчиваем тестирование большого количества уровня пользовательского интерфейса и в этих сценариях. Однажды я прочитал комментарий от кого-то о модульном тестировании, что вам не нужно писать тесты для кода, который может быть легко взломан, например, методы getter / setters могут быть легко нарушены (например, getter возвращает значение, которое он должен делать, и мы может легко сломать его, не возвращая значение), поэтому мы не заканчиваем писать модульные тесты для геттера и сеттера, если в него не встроена какая-то логика (в этом случае это на самом деле не геттер и сеттеры).
Так что, если GUI полностью тупой и в нем есть только привязки, то модульные тесты не требуются.