Wir haben kürzlich von einem Berater erfahren, dass ein Architekturproblem vorliegt, wenn ein Feature nur über automatisierte UI-Tests (z. B. Selenium, Coded UI) getestet werden kann. Diese Aussage mag zwar etwas extrem sein, entspricht jedoch in etwa der Testpyramide, in der UI-Tests einen kleinen Teil Ihrer gesamten automatisierten Testsuite ausmachen sollten.
Also, welche Arten von Funktionen sollten automatisierte UI-Tests haben? Wird ein System mit einer überzeugenden Architektur noch Funktionen haben, die nur durch UI-Tests überprüft werden können, oder sollten diese Tests nur als "Backup" für eine Reihe von Unit- und Service-Tests dienen?