Testing GUI applications
In a complex and feature-rich GUI application, the user is presented with many choices of widgets, menus, keyboard shortcuts, and so on. As seen earlier in the chapter, the event-driven nature of GUI programs lets the user dictate the program flow. This often presents many possible ways for the user to perform certain operations to arrive at the desired output.
Tip
It should be noted that we are not going to write any code here. This is just a high-level discussion that touches upon a few important testing considerations. For further learning on this topic, start with the following wiki page: https://en.wikipedia.org/wiki/Graphical_user_interface_testing.
Imagine a GUI application that allows selecting some object in the application window, for example, a folder icon on the desktop. The user can hover the mouse over the icon to highlight that object, and then click on it to select it. Alternatively, he can do a window selection, where a selection window is drawn around...