in reply to Testing a GUI application

One of the reasons why people talk about design patterns like Model-View-Controller is that they are strategies for designing your application so that as little as necessary of it will be GUI specific. As BrowserUK says, testing GUI stuff (or reusing) tends to be very hard. However if you have big non-GUI specific chunks, then you can write easy tests for those and reduce the amount that needs to be tested through the difficult GUI to a minimum.