I've a very big software project (.NET, C#, WPF). Now I want to develop a perfect test environment for it. At the moment I’m using some NUnit unit tests. Now I need a good plan to implement frontend/GUI (coded UI?) tests. Which tools and which method would be the best to do that?

I have experience with the coded UI tests from Visual Studio 2012 Ultimate edition. But I think that’s no good solution because if my software project will change the frontend, you can waste the tests.

What do you think is the best method to simulate user interactions?

  • The codedui tests would not be wasted if the front-end changes. You can redo the test or modify the original code it generated. – rrirower Nov 21 '14 at 2:28
  • Welcome to Software Recommendations! Please note this site is about recommending software – not howtos, manuals, best-practices, etc. – Izzy Nov 21 '14 at 10:52

I would take a look at Sikuli for the GUI. It is a python/java scripted system for testing and driving GUI components that is cross platform and independent of the code of the GUI it is testing.

  • Does not depend on item naming or IDs
  • Does not require modification of the GUI code
  • Does not use fixed positions
  • Uses image recognition to identify GUI components & results, so:
    • If the program under test opens in a different screen position it is fine
    • If component IDs change it is fine
    • If components move it doesn't care
    • If components change look just modify the recognition item
  • Can also send key presses
  • Does require that all components are visually distinct - which is a very good idea from a user point of view.
  • Free & Open Source

Not the answer you're looking for? Browse other questions tagged or ask your own question.