With the new Coded UI test in Visual Studio 2010, building automated tests for the user interface is no longer the unattainable Nirvana. In this session, we will explore the features of Coded UI tests in VS 2010. We will walk through how you record tests, add assertions and customize the resulting tests for increased automation. Finally, we will explore how to customize existing Coded UI tests and how to run them with your automated builds.
10. Agenda The State of Software Testing Manual Testing Coded UI Tests Coded UI Best Practices What’s New Since RTM? Q&A
11. Northeast Blackout of 2003 10 million people in Ontario and 45 million people in eight US states were without power Race condition in GE Energy’s Unix-based XA/21 energy management system Stalled FirstEnergy’s control room alarm system for over an hour Hid audio and visual alerts of system state changes, unprocessed events queued, and the primary server failed within 30 minutes Toronto on the evening of August 14 http://en.wikipedia.org/wiki/Northeast_Blackout_of_2003
12. Therac-25 Patients were given massive overdoses of radiation, 100 times the intended dose 3 patients died from radiation poisoning Race conditions occurred when the operator changed the setup quickly Arithmetic overflow caused the software to bypass safety checks http://en.wikipedia.org/wiki/Therac-25
13. Ariane 5, Maiden Voyage June 4, 1996, rocket explodes 39 seconds after take-off Decade of development and $7 billion dollars invested Destroyed rocket and cargo valued at $500 million 64-bit float converted to 16-bit signed integer, larger than 32,767, failed http://en.wikipedia.org/wiki/Ariane_5_Flight_501
14. Software Quality Troubles “my testers are spending too long testing the same thing” “tooling is expensive (time, licenses, people)” “when is my software ready to ship?” “developers and testers work in silos and don’t communicate/speak the same language” “it will take weeks for regression testing”
15. What the Industry Says software bugs cost the US economy an estimated $59.5 billion every year last year, canceled projects cost firms $67 billion; overruns on the other projects racked up another $21billion on average professional coders make 100 to 150 errors in every 1000 lines of code they write
16. What If You Could… easily manage test plans and test cases enable developers to easily automate functional UI tests Integrate functional UI testing into build automation parameterize playback of recorded tests fast forward through manual testing
20. Tester Life 70% of testing happens here Majority of test tools target here Black Box Testing White Box Testing API Testing
21. Visual Studio 2010 Generalist Specialist Coded UI Test Unit Testing Web Test Test Runner Load Test FF Manual Test Test Case Management Virtual Lab Management Data Collectors (Intellitrace, System Info.) Team Foundation Server with Reporting
31. Coded UI Best Practices Use the Coded UI Test Builder DO NOT EVER edit the UIMap.designer.cs file Use meaningful names Use meaningful Assertions Limit the number of actions Re-record when the UI changes Create separate UIMap files for each module API Coding Use the generated classes as much as possible Create a method for each custom assertion in UIMap.cs
36. UITestArchitecture Write a client that does something else! My UI Coded UI Test Test Runner Interpreter Code Generation Action Invoker Custom properties & code Customize recording Add/Modify API Playback Recorder Filter/ Aggregation Rules API Property Provider Browser Service Add another browser Technology Abstraction Layer Write technology adapters Web Plug-ins (MSHTML/DOM) Rich Client Plug-ins (UIA/MSAA) 3rd Party Plug-ins
37. Coded UI is Only One of the Tools Test Case Management 1000 vUsers Web Test Load Test Manual Testing Fast Fwd for Manual Testing Rich Actionable Bugs Virtual Env. Setup/Tear Down Environment from Template Checkpoint Environment Team Explorer Agents *Requires Visual Studio Test Professional 2010 for virtual lab management & configuration.
38. Improving Quality with VS 2010 Better Tools for Manual Testing UI Test Automation Tester-Developer Collaboration Build Integration
39. How to Get Started Visual Studio 2010 Premium or Ultimate Test Professional (optional) Team Foundation Server (optional) Play for FREE with VS 2010 and TFS 2010 VHD Windows Virtual PC (Windows 7) Microsoft Virtual PC 2007 SP 1 Windows Server 2008 Hyper-V
40. Useful Resources VS 2010 Testing http://msdn.microsoft.com/en-us/library/ms182409.aspx VS 2010 Coded UI http://msdn.microsoft.com/en-us/library/dd286726.aspx VS 2010 Main Resource Page http://msdn.microsoft.com/en-us/library/dd831853.aspx Local Technology Events http://twitter.com/MWD_DevEvents