title: Writing a Test Automation Framework: What pattern(s) to use?
body: <p>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.</p>
  
  <p>The Framework can change only when one of the following happens:</p>
  
  <ol>
  <li>New screens and functionalities are added.</li>
  <li>Existing screens are modified (UI).</li>
  <li>Existing screen functionalities are modified. For example, changing a ListView to a GridView to show data on a button click.</li>
  <li>Changes in business rules.</li>
  </ol>
  
  <p>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?</p>