I am writing a Test Automation Framework that involves automating testing a Winforms and WPF based application having 200 screens. The Automation Framework should do the control clicks and screen actions just as a tester would do to test a case by manually clicking the controls on the screens.
The Framework can change only when one of the following happens:
- New screens and functionalities are added.
- Existing screens are modified (UI).
- Existing screen functionalities are modified. For example, changing a ListView to a GridView to show data on a button click.
- Changes in business rules.
I am new to patterns, and am learning. Based on these requirements, can someone please tell me what patterns may prove most useful (if at all) is writing this fraemwork?