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

1,549 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 TestImaginet Resources Corp.http://www.imaginet.com
  2. 2. Agenda• Coded UI Test Overview• Recording Coded UITests• 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 maintenanceof Coded UI tests• Can author and maintain tests without writing code orcan extend tests using .NET• Can run within Visual Studio or through automation(e.g., a build)Test development and maintenance from withinVisual Studio
  4. 4. Supported Platforms• Supported (2012 RTM)– Windows Forms 2.0+– WPF 3.5+– SharePoint– Internet Explorer 8.0, 9.0– Internet Explorer 10.0(Desktop)– Dynamix CRM web client• Supported (2012 Update 1)– Google Chrome 21+– Firefox 15+• Unsupported but may work– Windows Win32• Partially Supported– MFC– Dynamix (Ax) 2012 Client– Citrix / Terminal Services– PowerBuilder• Unsupported– Internet Explorer < 8.0– Silverlight– Flash/Java– SAP– Microsoft Office– Apple Safari– Opera
  5. 5. Agenda• Coded UI Test Overview• Recording Coded UITests• Adding Test Validation• Writing your own code• Best Practices
  6. 6. Creating Coded UI TestsAction Recordingfrom Manual TestsVisual StudioTest BuilderVisual Studio(Hand Coded)Coded UI Test
  7. 7. Option 1: Based on Existing 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 recordedsteps into a Coded UI TestDefineRqtsDefineTestsCaptureTestsAutomateTests
  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 theCoded 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 TestOverview• Recording Coded UITests• Adding Test Validation• Writing your owncode• Best Practices
  12. 12. Validation• Use the Coded UI Test Builderto add assertions• Drag the crosshairs to a targetcontrol• Bundle assertions intomethods called from the testSelect apropertyClick to addassertionGenerate a methodto record theassertion(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 andReferences
  15. 15. The Primary Components• Test Class (e.g., MyTest.cs)– A .NET Coded UI Test class containing one or more TestMethods.• Test Method– An individual automated test case inside a Test Class.• Recorded Method– Code which actually automates the UI and performsassertions. (Do not change this code!)• UIMap– An XML designer file and related generated classes containingthe 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();}“Recorded Methods”created using the UI TestBuilder.Hand-coded to change theexpected value for the VerifySumrecorded method. There are manyother overrides made available toyou 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 lessthan 10 actions.• Use meaningful UI control names in the application undertest.• Do not edit the UIMap.Designer.cs file.• Use the Coded UI Test Builder and UI Control Locatorwhenever 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 Knowhttp://blog.imaginet.comStay up to speed on the latest news fromImaginet, Microsoft, Visual Studio, and the entire softwaredevelopment world.
  25. 25. More Webcasts on ALM / TFS / Visual Studio 2012• Upgrading to TFS 2012: What YouNeed to Know!• February 21 (1:00-2:30pm CT)• Getting Started With Coded UItesting: Building Your FirstAutomated Test• February 28 (1:00-2:30pm CT)Upcoming ALM Workshops & Webcasts:• Lean, Kanban, and TFS• March 7 (1:00-2:30pm CT)• March 21 (1:00-2:30pm CT)• Using Lean and Kanban toRevolutionize Your Organization• March 11 (1:00-2:00pm CT)• The newest of the new with VisualStudio and TFS 2012• March 14 (1:00-2:30pm CT)• March 28 (1:00-2:30pm CT)
  26. 26. For attendees of today‟s session that fill out the surveyFREE Imaginet On DemandWeb Training Subscription OfferComplete our Post-Webcast survey, and receive 1free Imaginet On Demand web trainingsubscription, good for 1 person for 1 month!! Thesurvey will be emailed to you immediately after thiswebcast is over.What is Imaginet On Demand? Imaginet is proud to announce our newestweb-based training program called Imaginet On Demand, your source for thebest Application Lifecycle Management (ALM) training on the internet.Imaginet On Demand is a subscription-based training program centric to theVisual Studio ALM tools, including Visual Studio, Team Foundation Server(TFS), Microsoft Test Manager, and Microsoft Visual Studio Lab Management.Learn the new tools of Visual Studio at your pace, from wherever you want.Its that simple!
  27. 27. 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 yourMicrosoft Software Assurance credits to receive some freeTFS/ALM Deployment Planning Services days with Imaginet• Partner Services Credit (PSC) – Have you or are you about tospend money with Microsoft on Visual Studio 2012 products? Ifso, Microsoft may kick in some funding to help you successfullyadopt.• Virtual Technical Specialist (VTS) hours –You may be eligibleto receive some free remote consulting/training hours withImaginet through the Microsoft Virtual Technical Specialistprogram.For more information, email bmadison@imaginet.com.
  28. 28. Email us at:ALM Planning & Implementation ServicesALM Planning• ALM Assessment & Envisioning Workshops(3 or 5 days)• VS & TFS Migration Planning Workshop (5days)• TFS Deployment Planning* (5 days)• Visual SourceSafe to TFS MigrationPlanning* (3 Days)• Visual Studio Quality Tools DeploymentPlanning* (5 days)Upgrade• TFS 2010 Adoption Quick Start (5 or 10days)• TFS 2012 Adoption Quick Start (5 or 10days)• TFS 2010 Upgrade Quick Start (10 days)• TFS 2012 Upgrade Quick Start (10 days)Remote Support• Remote Support for TFS & Visual StudioLab• Visual Studio Lab Management Quick Start(10 days)Testing• Manual Testing with Test Manager QuickStart (5 days)• Visual Studio Testing Tools Quick Start (10days)• Visual Studio Automated Testing Quick Start(5 days)• Visual Studio Load Testing Quick Start (5 or10 Days)Builds• Automated Build & Release ManagementQuick Start (5 days)• Automated Build Center of Excellence (CoE)Database• Visual Studio Database Tools Quick Start(10 days)Integrations• Team Foundation Server (TFS) & ProjectServer Integration Quick Start (10 days)• TFS & Quality Center Integration/MigrationQuick Start (10 days)
  29. 29. Need Help?• Includes installing, configuring, and implementing bothMicrosoft Test Manager (for manual testing) and MicrosoftVisual Studio (for automated and performance testing).• Learn best practices for designing and implementing aneffective testing strategy from an ALM perspective.• Support and training for your team• Includes a high-level ALM assessmentImaginet’s Visual Studio 2012Testing Tools 10-day QuickstartInterested? Just email us at info@imaginet.com.
  30. 30. Top Gun Academy Training Classes• Other Imaginet Training Classes– ALM• Microsoft Visual Studio & TFS 2012 – Skills Upgrade (2 days)• Overview Training with Microsoft Visual Studio 2012 ALM Tools (4 days)• Overview Training with Microsoft Visual Studio 2010 ALM Tools (4 days)• Testers Training with Microsoft Visual Studio 2012 ALM Tools (4 days)• Testers Training with Microsoft Visual Studio 2010 ALM Tools (4 days)• Developers Training with Microsoft Visual Studio 2012 ALM Tools (4 days)• Developers Training with Microsoft Visual Studio 2010 ALM Tools (4 days)• Imaginet On Demand Online Web Training– Scrum/Kanban• Professional Scrum Foundations (PSF) (2 days)• Professional Scrum Master (PSM) (2 days)• Professional Scrum Developer (PSD) (5 days)• Professional Scrum Master (PSM) Using Microsoft ALM (3 days)• Accredited Core Kanban Using Microsoft ALM (3 days)To register or for more information, please visit our website here:http://www.imaginet.com/ or contact us: info@imaginet.com
  31. 31. Upcoming Class – Tester Training with VS 2012This four-day instructor-led course provides students with theknowledge and skills to use the latest testing tools provided by VisualStudio 2012 to support a variety of different testing needs (manualand automated).Date: March 11-15, 2013Location: Dallas (Irving, TX)Price: $2375/studentRegistration link will be included in our follow-up email later today!Testers Training UsingVisual Studio 2012 ALM Tools(4 Days Class)
  32. 32. For questions or more information,please contact us at:info@imaginet.com or (972) 607-4830Remember to add http://blog.imaginet.com to your favorite reader!
  33. 33. http://www.imaginet.com

×