Automated testing at the Graphical User Interface Level
GUI Testing is a testing technique where one tests the System Under Test (SUT) solely through its Graphical User Interface (GUI). The only way to find errors is to thoroughly observe the status of the GUI throughout the test. This type of testing is usually still carried out manually, where a tester just follows a previously written test case and verifies whether the application responds to all inputs as expected.
On the one hand GUI testing is a relatively straightforward process, since one does not need to read or test the source code of the SUT. On the other hand it is quite laborious, time consuming and, well... boring...
Approaches for automation of GUI testing are for example Capture & Replay or Visual Testing. These approaches use test scripts to automate the steps of each test case. These type of tests, whether manual or automated through scripts, test the sunny day use cases and mostly follow the happy paths. But what about the less sunny test scenarios? Those scenarios executed by the rogue user?