Getting Started with Coded UI Testing: Building Your First Automated Test            Imaginet Resources Corp.             ...
Agenda• Coded UI Test Overview• Recording Coded UI  Tests• Adding Test Validation• Writing your own code• Best Practices
Coded UI Test Tools• Used to automate testing from the user interface• Test development/maintenance in Visual Studio• Tool...
Supported Platforms•   Supported (2012 RTM)    – Windows Forms 2.0+                    •    Partially Supported    – WPF 3...
Agenda• Coded UI Test Overview• Recording Coded UI  Tests• Adding Test Validation• Writing your own code• Best Practices
Creating Coded UI Tests Action Recordingfrom Manual Tests  Visual Studio  Test Builder              Coded UI Test  Visual ...
Option 1: Based on Existing Tests     Define        Define        Capture       Automate      Rqts         Tests          ...
Option 2: Using the Coded UI Test Builder• Approach:  –   Click the record button  –   Perform the steps in your test targ...
DEMONSTRATION• Converting Test Cases• Recording tests with the  Coded UI Test Builder
Option 3: Author Tests using .NET• Hand-code in .NET, without any additional assistance• Utilize one of the Coded UI-based...
Agenda• Coded UI Test  Overview• Recording Coded UI  Tests• Adding Test  Validation• Writing your own  code• Best Practices
Validation• Use the Coded UI Test Builder  to add assertions• Drag the crosshairs to a target  control• Bundle assertions ...
DEMONSTRATION• Adding Assertions
Agenda•   Coded UI Test Overview•   Recording Coded UI Tests•   Adding Test Validation•   Writing your own code•   Best Pr...
The Primary Components• Test Class (e.g., MyTest.cs)   – A .NET Coded UI Test class containing one or more Test     Method...
Overriding Generated Properties[TestMethod]public void CodedUITestMethod1(){        this.UIMap.OpenCalc();        this.UIM...
The APIMicrosoft.VisualStudio.TestingTools.UITesting:• UITestControl• Keyboard   – SendKeys• Mouse• Playback.PlaybackSetti...
DEMONSTRATION• Digging into the Code
Agenda•   Coded UI Test Overview•   Recording Coded UI Tests•   Adding Test Validation•   Writing your own code•   Best Pr...
Best Practices• Create each test case as a sequence of Recorded Methods.• Use multiple UI Maps to separate areas o the app...
Summary•   Coded UI Test Overview•   Recording Coded UI Tests•   Adding Test Validation•   Writing your own code•   Best P...
Questions?
Want to know more...?
Imaginet‟s New Blog Keeps You In The KnowStay up to speed on the latest news fromImaginet, Microsoft, Visual Studio, and t...
More Webcasts on ALM / TFS / Visual Studio 2012  •   Quality Coding: What’s New with Visual Studio 2012       • April 18 (...
Free Services from Imaginet & MicrosoftThere are a number of different Microsoft Programs that youmight be able to leverag...
Need Help with YOUR Automated Testing?   Imaginet’s Visual Studio 2012 Automated Testing 5-day Quickstart• Learn best prac...
ALM Planning & Implementation ServicesALM Planning                                     Testing•  ALM Assessment & Envision...
For questions or more information,       please contact us at: info@imaginet.com or (972)607-4830 Remember to add http://b...
http://www.imaginet.com
Upcoming SlideShare
Loading in …5
×

Getting Started with Visual Studio's Coded UI Testing: Building Your First Automated Test

871 views

Published on

This training seminar demonstrates how to record tests run against various types of application user interfaces using Microsoft Visual Studio’s Coded UI Tests and how to replay them at any time. Additionally, we explore how to embed validations, either simple or elaborate, to ensure your application is producing the correct results. Learn how to improve the quality of your applications by having a repeatable set of Microsoft Coded UI Tests available to ensure defects don’t go unnoticed!

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

Getting Started with Visual Studio's Coded UI Testing: Building Your First Automated Test

  1. 1. Getting Started with Coded UI Testing: Building Your First Automated Test Imaginet Resources Corp. www.imaginet.com
  2. 2. Agenda• Coded UI Test Overview• Recording Coded UI Tests• Adding Test Validation• Writing your own code• Best Practices
  3. 3. Coded UI Test Tools• Used to automate testing from the user interface• Test development/maintenance in Visual Studio• Tools provided to improve creation and maintenance of Coded UI tests• Can author and maintain tests without writing code or can extend tests using .NET• Can run within Visual Studio or through automation (e.g., a build) Test development and maintenance from within Visual Studio
  4. 4. Supported Platforms• Supported (2012 RTM) – Windows Forms 2.0+ • Partially Supported – WPF 3.5+ – MFC – SharePoint – Dynamix (Ax) 2012 Client – Internet Explorer 8.0, 9.0 – Citrix / Terminal Services – Internet Explorer 10.0 – PowerBuilder (Desktop) – Dynamix CRM web client • Unsupported – Internet Explorer < 8.0• Supported (2012 Update 1) – Silverlight – Google Chrome 21+ – Flash/Java – Firefox 15+ – SAP – Microsoft Office• Unsupported but may work – Apple Safari – Windows Win32 – Opera Reference: http://msdn.microsoft.com/en-us/library/dd380742.aspx
  5. 5. Agenda• Coded UI Test Overview• Recording Coded UI Tests• Adding Test Validation• Writing your own code• Best Practices
  6. 6. Creating Coded UI Tests Action Recordingfrom Manual Tests Visual Studio Test Builder Coded UI Test Visual Studio (Hand Coded)
  7. 7. Option 1: Based on Existing Tests Define Define Capture Automate Rqts Tests Tests Tests• Using Microsoft Test Manager (MTM)… – Analyst defines requirements – Tester defines manual test cases for the requirement – Tester runs test cases and records the steps• As needed, “Automation Tester” converts recorded steps into a Coded UI Test
  8. 8. Option 2: Using the Coded UI Test Builder• Approach: – Click the record button – Perform the steps in your test target – Click the generate code button – Repeat to generate more methods for the test – Show recorded steps to delete missteps
  9. 9. DEMONSTRATION• Converting Test Cases• Recording tests with the Coded UI Test Builder
  10. 10. Option 3: Author Tests using .NET• Hand-code in .NET, without any additional assistance• Utilize one of the Coded UI-based community frameworks: – CUITe (Coded UI Test Enhanced) • Authored by Microsoft employees but not a „product‟ • Uses its own tooling to maintain a separate UI object repository • Improves code maintainability • Browser-based only • Currently only supported on Visual Studio 2010 • Maintained on CodePlex: http://cuite.codeplex.com/ – Code First Coded UI • Led by Microsoft employees but not a „product‟ • Pure code – does not use an object repository • Installable via NuGet • Uses Scaffolding approach to generate tests • Browser-based only • Currently only supported on Visual Studio 2010 • Maintained on CodePlex: http://codeduicodefirst.codeplex.com/
  11. 11. Agenda• Coded UI Test Overview• Recording Coded UI Tests• Adding Test Validation• Writing your own code• Best Practices
  12. 12. Validation• Use the Coded UI Test Builder to add assertions• Drag the crosshairs to a target control• Bundle assertions into methods called from the test Click to add assertion Select a property Generate a method to record the assertion(s)
  13. 13. DEMONSTRATION• Adding Assertions
  14. 14. Agenda• Coded UI Test Overview• Recording Coded UI Tests• Adding Test Validation• Writing your own code• Best Practices and References
  15. 15. The Primary Components• Test Class (e.g., MyTest.cs) – A .NET Coded UI Test class containing one or more Test Methods.• Test Method – An individual automated test case inside a Test Class.• Recorded Method – Code which actually automates the UI and performs assertions. (Do not change this code!)• UIMap – An XML designer file and related generated classes containing the recorded methods.
  16. 16. Overriding Generated Properties[TestMethod]public void CodedUITestMethod1(){ this.UIMap.OpenCalc(); this.UIMap.AddThreeAndTwo(); this.UIMap.VerifySumExpectedValues.UITxtDisplayEditText = "5"; this.UIMap.VerifySum(); this.UIMap.CloseCalc();} Hand-coded to change the “Recorded Methods” expected value for the VerifySum created using the UI Test recorded method. There are many Builder. other overrides made available to you in the generated code.
  17. 17. The APIMicrosoft.VisualStudio.TestingTools.UITesting:• UITestControl• Keyboard – SendKeys• Mouse• Playback.PlaybackSettings… – DelayBetweenActions – MatchExactHierarchy – SearchInMinimizedWindows – SearchTimeout – ThinkTimeMultiplier – WaitForReadyLevel – WaitForReadyTimeout
  18. 18. DEMONSTRATION• Digging into the Code
  19. 19. Agenda• Coded UI Test Overview• Recording Coded UI Tests• Adding Test Validation• Writing your own code• Best Practices
  20. 20. Best Practices• Create each test case as a sequence of Recorded Methods.• Use multiple UI Maps to separate areas o the application.• Use meaningful test method names.• Try to limit the length of each recorded method to less than 10 actions.• Use meaningful UI control names in the application under test.• Do not edit the UIMap.Designer.cs file.• Use the Coded UI Test Builder and UI Control Locator whenever possible.
  21. 21. Summary• Coded UI Test Overview• Recording Coded UI Tests• Adding Test Validation• Writing your own code• Best Practices
  22. 22. Questions?
  23. 23. Want to know more...?
  24. 24. Imaginet‟s New Blog Keeps You In The KnowStay up to speed on the latest news fromImaginet, Microsoft, Visual Studio, and the entire softwaredevelopment world. http://blog.imaginet.com
  25. 25. More Webcasts on ALM / TFS / Visual Studio 2012 • Quality Coding: What’s New with Visual Studio 2012 • April 18 (1:00-2:30pm CT) • May 9 (1:00-2:30pm CT) • May 23 (1:00-2:30pm CT) • Getting Started With Coded UI testing: Building Your First Automated Test • April 11 (1:00-2:30pm CT) • April 25 (1:00-2:30pm CT) • June 13 (1:00-2:30pm CT) • June 27 (1:00-2:30pm CT) • The How, What, and Why of Performance Testing Your Applications • May 2 (1:00-2:30pm CT) • Top Business Benefits of Application Lifecycle Management (ALM) • June 3 (1:00-2:00pm CT) • Managing Test Labs Without the Headaches • June 6 (1:00-2:30pm CT) • June 20 (1:00-2:30pm CT)
  26. 26. Free Services from Imaginet & MicrosoftThere are a number of different Microsoft Programs that youmight be able to leverage to get some free services fromImaginet:• Deployment Planning Services (DPS) – You can trade in your Microsoft Software Assurance credits to receive some free TFS/ALM Deployment Planning Services days with Imaginet• Partner Services Credit (PSC) – Have you or are you about to spend money with Microsoft on Visual Studio 2012 products? If so, Microsoft may kick in some funding to help you successfully adopt.• Virtual Technical Specialist (VTS) hours –You may be eligible to receive some free remote consulting/training hours with Imaginet through the Microsoft Virtual Technical Specialist program. For more information, email bmadison@imaginet.com.
  27. 27. Need Help with YOUR Automated Testing? Imaginet’s Visual Studio 2012 Automated Testing 5-day Quickstart• Learn best practices for test selection, extension, data binding, maintenance, frameworks, community extensions (such as the CUITe and the UI Map Toolbox), and other real-world scenarios.• Includes automated test development & execution for YOUR application• Support and training for your team• Includes a high-level ALM assessmentInterested? Just email us at info@imaginet.com.
  28. 28. ALM Planning & Implementation ServicesALM Planning Testing• ALM Assessment & Envisioning Workshops • Manual Testing with Test Manager Quick (3 or 5 days) Start (5 days)• VS & TFS Migration Planning Workshop (5 • Visual Studio Testing Tools Quick Start (10 days) days)• TFS Deployment Planning* (5 days) • Visual Studio Automated Testing Quick Start• Visual SourceSafe to TFS Migration (5 days) Planning* (3 Days) • Visual Studio Load Testing Quick Start (5 or• Visual Studio Quality Tools Deployment 10 Days) Planning* (5 days) BuildsUpgrade • Automated Build & Release Management• TFS 2010 Adoption Quick Start (5 or 10 Quick Start (5 days) days) • Automated Build Center of Excellence (CoE)• TFS 2012 Adoption Quick Start (5 or 10 days) Database• TFS 2010 Upgrade Quick Start (10 days) • Visual Studio Database Tools Quick Start• TFS 2012 Upgrade Quick Start (10 days) (10 days)Remote Support Integrations• Remote Support for TFS & Visual Studio • Team Foundation Server (TFS) & Project Server Integration Quick Start (10 days)Lab • TFS & Quality Center Integration/Migration• Visual Studio Lab Management Quick Start Quick Start (10 days) (10 days) Email us at:
  29. 29. For questions or more information, please contact us at: info@imaginet.com or (972)607-4830 Remember to add http://blog.imaginet.com to your favorite reader!
  30. 30. http://www.imaginet.com

×