SlideShare a Scribd company logo
1 of 36
Getting Started with Coded UI Testing:
 Building Your First Automated Test




            Imaginet Resources Corp.
               www.imaginet.com
Speaker Bio

Anna Russo
Sr. ALM Consultant

•   TFS/ALM is what I do!
•   Work for Imaginet since 2008
•   ALM MVP
•   Testing Background

• In my free time:
    – Cycling in Southern California
    – Blogging
    – Volunteer Testing Tools on Visual Studio Gallery
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
• 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
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
Third-Party Support
Agenda


• Coded UI Test Overview
• Recording Coded UI
  Tests
• Adding Test Validation
• Writing your own code
• Best Practices
Creating Coded UI Tests


 Action Recording
from Manual Tests




  Visual Studio
  Test Builder              Coded UI Test




  Visual Studio
  (Hand Coded)
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
AnnaBots
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
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 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/
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 into
  methods called from the test          Click to add
                                         assertion




                                        Select a
                                        property

                                    Generate a method
                                      to record the
                                       assertion(s)
DEMONSTRATION




• Adding Assertions
  (Verification/Validation)
Agenda




•   Coded UI Test Overview
•   Recording Coded UI Tests
•   Adding Test Validation
•   Writing your own code
•   Best Practices and
    References
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.
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.
The API
Microsoft.VisualStudio.TestingTools.UITesting:
• UITestControl

• Keyboard
   – SendKeys

• Mouse

• Playback.PlaybackSettings…
   –   DelayBetweenActions
   –   MatchExactHierarchy
   –   SearchInMinimizedWindows
   –   SearchTimeout
   –   ThinkTimeMultiplier
   –   WaitForReadyLevel
   –   WaitForReadyTimeout
DEMONSTRATION




• UIMap Editor
Agenda


•   Coded UI Test Overview
•   Recording Coded UI Tests
•   Adding Test Validation
•   Writing your own code
•   Best Practices
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.
Summary
•   Coded UI Test Overview

•   Recording Coded UI Tests

•   Adding Test Validation

•   Writing your own code

•   Best Practices
Questions?
Want to know more...?
Imaginet‟s New Blog Keeps You In The Know
Stay up to speed on the latest news from Imaginet, Microsoft,
Visual Studio, and the entire software development world.

                 http://blog.imaginet.com
More Webcasts on ALM / TFS / Visual Studio 2012

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 to Revolutionize Your
     Organization
      • March 11 (1:00-2:00pm CT)

 •   The newest of the new with Visual Studio and TFS 2012
      • March 14 (1:00-2:30pm CT)
      • March 28 (1:00-2:30pm CT)
For attendees of today‟s session that fill out the survey

    FREE Imaginet On Demand
   Web Training Subscription Offer
Complete our Post-Webcast survey, and receive 1
free Imaginet On Demand web training
subscription, good for 1 person for 1 month!! The
survey will be emailed to you immediately after this
webcast is over.

What is Imaginet On Demand? Imaginet is proud to announce our newest
web-based training program called Imaginet On Demand, your source for the
best Application Lifecycle Management (ALM) training on the internet.
Imaginet On Demand is a subscription-based training program centric to the
Visual 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.
It's that simple!
Free Services from Imaginet & Microsoft

There are a number of different Microsoft Programs that you
might be able to leverage to get some free services from
Imaginet:

•    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.
ALM Planning & Implementation Services
ALM 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)
                                              Builds
Upgrade                                       •  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)
Need Help?

     Imaginet’s Visual Studio 2012
    Testing Tools 10-day Quickstart


• Includes installing, configuring, and implementing both
  Microsoft Test Manager (for manual testing) and Microsoft
  Visual Studio (for automated and performance testing).

• Learn best practices for designing and implementing an
  effective testing strategy from an ALM perspective.

• Support and training for your team

• Includes a high-level ALM assessment

Interested? Just email us at info@imaginet.com.
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
Upcoming Class – Tester Training with VS 2012

         Testers Training Using
      Visual Studio 2012 ALM Tools
              (4 Days Class)
This four-day instructor-led course provides students with the
knowledge and skills to use the latest testing tools provided by Visual
Studio 2012 to support a variety of different testing needs (manual
and automated).

Date:                   March 11-15, 2013
Location:               Dallas (Irving, TX)
Price:                  $2375/student

 Registration link will be included in our follow-up email later today!
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!
http://www.imaginet.com

More Related Content

More from Imaginet

Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to KanbanImaginet
 
Top Business Benefits of Application Lifecycle Management (ALM)
Top Business Benefits of Application Lifecycle Management (ALM)Top Business Benefits of Application Lifecycle Management (ALM)
Top Business Benefits of Application Lifecycle Management (ALM)Imaginet
 
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know! (07-2...
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know! (07-2...Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know! (07-2...
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know! (07-2...Imaginet
 
Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to KanbanImaginet
 
Getting Started With Coded UI testing: Building Your First Automated Test
Getting Started With Coded UI testing: Building Your First Automated TestGetting Started With Coded UI testing: Building Your First Automated Test
Getting Started With Coded UI testing: Building Your First Automated TestImaginet
 
Managing Test Labs Without the Headaches
Managing Test Labs Without the HeadachesManaging Test Labs Without the Headaches
Managing Test Labs Without the HeadachesImaginet
 
Getting Started with Visual Studio’s Coded UI Testing: Building Your First Au...
Getting Started with Visual Studio’s Coded UI Testing: Building Your First Au...Getting Started with Visual Studio’s Coded UI Testing: Building Your First Au...
Getting Started with Visual Studio’s Coded UI Testing: Building Your First Au...Imaginet
 
Managing Test Labs Without the Headaches
Managing Test Labs Without the HeadachesManaging Test Labs Without the Headaches
Managing Test Labs Without the HeadachesImaginet
 
Quality Coding: What's New with Visual Studio 2012
Quality Coding: What's New with Visual Studio 2012Quality Coding: What's New with Visual Studio 2012
Quality Coding: What's New with Visual Studio 2012Imaginet
 
New SharePoint Developer Tools in Visual Studio 2012
New SharePoint Developer Tools in Visual Studio 2012New SharePoint Developer Tools in Visual Studio 2012
New SharePoint Developer Tools in Visual Studio 2012Imaginet
 
Quality Coding: What’s New with Visual Studio 2012
Quality Coding: What’s New with Visual Studio 2012Quality Coding: What’s New with Visual Studio 2012
Quality Coding: What’s New with Visual Studio 2012Imaginet
 
Lean, Kanban and TFS
Lean, Kanban and TFSLean, Kanban and TFS
Lean, Kanban and TFSImaginet
 
The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012Imaginet
 
The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012Imaginet
 
Using Lean and Kanban to Revolutionize Your Organization
Using Lean and Kanban to Revolutionize Your OrganizationUsing Lean and Kanban to Revolutionize Your Organization
Using Lean and Kanban to Revolutionize Your OrganizationImaginet
 
Lean, Kanban, and TFS
Lean, Kanban, and TFSLean, Kanban, and TFS
Lean, Kanban, and TFSImaginet
 
How Microsoft ALM Tools Can Improve Your Bottom Line
How Microsoft ALM Tools Can Improve Your Bottom LineHow Microsoft ALM Tools Can Improve Your Bottom Line
How Microsoft ALM Tools Can Improve Your Bottom LineImaginet
 
Upgrading to TFS 2012: What You Need to Know!
Upgrading to TFS 2012: What You Need to Know!Upgrading to TFS 2012: What You Need to Know!
Upgrading to TFS 2012: What You Need to Know!Imaginet
 
Getting Started with Coded UI Testing: Building Your First Automated Test
Getting Started with Coded UI Testing: Building Your First Automated TestGetting Started with Coded UI Testing: Building Your First Automated Test
Getting Started with Coded UI Testing: Building Your First Automated TestImaginet
 
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!Imaginet
 

More from Imaginet (20)

Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to Kanban
 
Top Business Benefits of Application Lifecycle Management (ALM)
Top Business Benefits of Application Lifecycle Management (ALM)Top Business Benefits of Application Lifecycle Management (ALM)
Top Business Benefits of Application Lifecycle Management (ALM)
 
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know! (07-2...
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know! (07-2...Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know! (07-2...
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know! (07-2...
 
Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to Kanban
 
Getting Started With Coded UI testing: Building Your First Automated Test
Getting Started With Coded UI testing: Building Your First Automated TestGetting Started With Coded UI testing: Building Your First Automated Test
Getting Started With Coded UI testing: Building Your First Automated Test
 
Managing Test Labs Without the Headaches
Managing Test Labs Without the HeadachesManaging Test Labs Without the Headaches
Managing Test Labs Without the Headaches
 
Getting Started with Visual Studio’s Coded UI Testing: Building Your First Au...
Getting Started with Visual Studio’s Coded UI Testing: Building Your First Au...Getting Started with Visual Studio’s Coded UI Testing: Building Your First Au...
Getting Started with Visual Studio’s Coded UI Testing: Building Your First Au...
 
Managing Test Labs Without the Headaches
Managing Test Labs Without the HeadachesManaging Test Labs Without the Headaches
Managing Test Labs Without the Headaches
 
Quality Coding: What's New with Visual Studio 2012
Quality Coding: What's New with Visual Studio 2012Quality Coding: What's New with Visual Studio 2012
Quality Coding: What's New with Visual Studio 2012
 
New SharePoint Developer Tools in Visual Studio 2012
New SharePoint Developer Tools in Visual Studio 2012New SharePoint Developer Tools in Visual Studio 2012
New SharePoint Developer Tools in Visual Studio 2012
 
Quality Coding: What’s New with Visual Studio 2012
Quality Coding: What’s New with Visual Studio 2012Quality Coding: What’s New with Visual Studio 2012
Quality Coding: What’s New with Visual Studio 2012
 
Lean, Kanban and TFS
Lean, Kanban and TFSLean, Kanban and TFS
Lean, Kanban and TFS
 
The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012
 
The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012
 
Using Lean and Kanban to Revolutionize Your Organization
Using Lean and Kanban to Revolutionize Your OrganizationUsing Lean and Kanban to Revolutionize Your Organization
Using Lean and Kanban to Revolutionize Your Organization
 
Lean, Kanban, and TFS
Lean, Kanban, and TFSLean, Kanban, and TFS
Lean, Kanban, and TFS
 
How Microsoft ALM Tools Can Improve Your Bottom Line
How Microsoft ALM Tools Can Improve Your Bottom LineHow Microsoft ALM Tools Can Improve Your Bottom Line
How Microsoft ALM Tools Can Improve Your Bottom Line
 
Upgrading to TFS 2012: What You Need to Know!
Upgrading to TFS 2012: What You Need to Know!Upgrading to TFS 2012: What You Need to Know!
Upgrading to TFS 2012: What You Need to Know!
 
Getting Started with Coded UI Testing: Building Your First Automated Test
Getting Started with Coded UI Testing: Building Your First Automated TestGetting Started with Coded UI Testing: Building Your First Automated Test
Getting Started with Coded UI Testing: Building Your First Automated Test
 
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!
 

Recently uploaded

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

Getting Started with Coded UI Testing: Building Your First Automated Test

  • 1. Getting Started with Coded UI Testing: Building Your First Automated Test Imaginet Resources Corp. www.imaginet.com
  • 2. Speaker Bio Anna Russo Sr. ALM Consultant • TFS/ALM is what I do! • Work for Imaginet since 2008 • ALM MVP • Testing Background • In my free time: – Cycling in Southern California – Blogging – Volunteer Testing Tools on Visual Studio Gallery
  • 3. Agenda • Coded UI Test Overview • Recording Coded UI Tests • Adding Test Validation • Writing your own code • Best Practices
  • 4. 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
  • 5. 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
  • 7. Agenda • Coded UI Test Overview • Recording Coded UI Tests • Adding Test Validation • Writing your own code • Best Practices
  • 8. Creating Coded UI Tests Action Recording from Manual Tests Visual Studio Test Builder Coded UI Test Visual Studio (Hand Coded)
  • 9. 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
  • 11. 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
  • 12. DEMONSTRATION • Converting Test Cases • Recording tests with the Coded UI Test Builder
  • 13. 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/
  • 14. Agenda • Coded UI Test Overview • Recording Coded UI Tests • Adding Test Validation • Writing your own code • Best Practices
  • 15. 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)
  • 16. DEMONSTRATION • Adding Assertions (Verification/Validation)
  • 17. Agenda • Coded UI Test Overview • Recording Coded UI Tests • Adding Test Validation • Writing your own code • Best Practices and References
  • 18. 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.
  • 19. 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.
  • 20. The API Microsoft.VisualStudio.TestingTools.UITesting: • UITestControl • Keyboard – SendKeys • Mouse • Playback.PlaybackSettings… – DelayBetweenActions – MatchExactHierarchy – SearchInMinimizedWindows – SearchTimeout – ThinkTimeMultiplier – WaitForReadyLevel – WaitForReadyTimeout
  • 22. Agenda • Coded UI Test Overview • Recording Coded UI Tests • Adding Test Validation • Writing your own code • Best Practices
  • 23. 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.
  • 24. Summary • Coded UI Test Overview • Recording Coded UI Tests • Adding Test Validation • Writing your own code • Best Practices
  • 26. Want to know more...?
  • 27. Imaginet‟s New Blog Keeps You In The Know Stay up to speed on the latest news from Imaginet, Microsoft, Visual Studio, and the entire software development world. http://blog.imaginet.com
  • 28. More Webcasts on ALM / TFS / Visual Studio 2012 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 to Revolutionize Your Organization • March 11 (1:00-2:00pm CT) • The newest of the new with Visual Studio and TFS 2012 • March 14 (1:00-2:30pm CT) • March 28 (1:00-2:30pm CT)
  • 29. For attendees of today‟s session that fill out the survey FREE Imaginet On Demand Web Training Subscription Offer Complete our Post-Webcast survey, and receive 1 free Imaginet On Demand web training subscription, good for 1 person for 1 month!! The survey will be emailed to you immediately after this webcast is over. What is Imaginet On Demand? Imaginet is proud to announce our newest web-based training program called Imaginet On Demand, your source for the best Application Lifecycle Management (ALM) training on the internet. Imaginet On Demand is a subscription-based training program centric to the Visual 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. It's that simple!
  • 30. Free Services from Imaginet & Microsoft There are a number of different Microsoft Programs that you might be able to leverage to get some free services from Imaginet: • 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.
  • 31. ALM Planning & Implementation Services ALM 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) Builds Upgrade • 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)
  • 32. Need Help? Imaginet’s Visual Studio 2012 Testing Tools 10-day Quickstart • Includes installing, configuring, and implementing both Microsoft Test Manager (for manual testing) and Microsoft Visual Studio (for automated and performance testing). • Learn best practices for designing and implementing an effective testing strategy from an ALM perspective. • Support and training for your team • Includes a high-level ALM assessment Interested? Just email us at info@imaginet.com.
  • 33. 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
  • 34. Upcoming Class – Tester Training with VS 2012 Testers Training Using Visual Studio 2012 ALM Tools (4 Days Class) This four-day instructor-led course provides students with the knowledge and skills to use the latest testing tools provided by Visual Studio 2012 to support a variety of different testing needs (manual and automated). Date: March 11-15, 2013 Location: Dallas (Irving, TX) Price: $2375/student Registration link will be included in our follow-up email later today!
  • 35. 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!

Editor's Notes

  1. This training seminar will demonstrate how to record tests run against various types of application user interfaces using Microsoft Visual Studio&apos;s Coded UI Tests and how to replay them at any time. Additionally, we will 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!
  2. Extensible framework. Sample shows testing support for MS ExcelUpdated, source: http://msdn.microsoft.com/en-us/library/dd380742.aspxFirefox dropped: http://msdn.microsoft.com/en-us/library/hh506981.aspx---
  3. Source: http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.uitesting.aspx
  4. Source: http://msdn.microsoft.com/en-us/library/dd380782.aspx
  5. Want to know more?
  6. Want to know more?