SlideShare uma empresa Scribd logo
1 de 42
Testing the User Interface Coded UI Tests with Visual Studio 2010 Eric D. Boyd
Introduction Eric D. Boyd 15 years in technology
I’m From Here
I Moved Here
I Work Here www.centare.com
I Work On
I Blog Here www.ericdboyd.com
I Tweet Here www.twitter.com/EricDBoyd
Getting to Know You Photo by www.rebeccasandulak.com/
Agenda The State of Software Testing Manual Testing Coded UI Tests Coded UI Best Practices What’s New Since RTM? Q&A
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
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
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
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”
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
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
Areas of the Project Lifecycle
Story Time – Testing Failures
Testing Cycle
Tester Life 70% of testing happens here Majority of test tools target here Black Box Testing White Box Testing API Testing
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
Challenges of UI Testing
What are Coded UI Tests?
Anatomy of Coded UI Tests
Demo – Create Coded UI Tests
Demo – Manual Testing
Demo – Automating the Manual Tests
Demo – Editing Existing Coded UI Test
Demo – Customizing Tests
Demo – Data-Driven Coded UI Tests
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
Feature Pack 2
Demo – Feature Pack 2
Automation Platform Support
Demo – Build Automation
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
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.
Improving Quality with VS 2010 Better Tools for Manual Testing UI Test Automation Tester-Developer Collaboration Build Integration
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
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
Q&A
Thank You!

Mais conteúdo relacionado

Mais procurados

Coded ui in a nutshell
Coded ui in a nutshellCoded ui in a nutshell
Coded ui in a nutshell
Omer Karpas
 
Unit testing with visual studio 2012
Unit testing with visual studio 2012Unit testing with visual studio 2012
Unit testing with visual studio 2012
Abhimanyu Singhal
 
Testing with test_complete
Testing with test_completeTesting with test_complete
Testing with test_complete
binuiweb
 
UI Testing Automation
UI Testing AutomationUI Testing Automation
UI Testing Automation
AgileEngine
 
Automation Testing with Test Complete
Automation Testing with Test CompleteAutomation Testing with Test Complete
Automation Testing with Test Complete
Vartika Saxena
 

Mais procurados (20)

Coded ui - lesson 1 - overview
Coded ui - lesson 1 - overviewCoded ui - lesson 1 - overview
Coded ui - lesson 1 - overview
 
Coded ui in a nutshell
Coded ui in a nutshellCoded ui in a nutshell
Coded ui in a nutshell
 
Remote Test Execution using TFS 2015 (RC2 and beyond)
Remote Test Execution using TFS 2015 (RC2 and beyond)Remote Test Execution using TFS 2015 (RC2 and beyond)
Remote Test Execution using TFS 2015 (RC2 and beyond)
 
Coded ui - lesson 3 - case study - calculator
Coded ui - lesson 3 - case study - calculatorCoded ui - lesson 3 - case study - calculator
Coded ui - lesson 3 - case study - calculator
 
Test Tooling in Visual Studio 2012 an overview
Test Tooling in Visual Studio 2012 an overviewTest Tooling in Visual Studio 2012 an overview
Test Tooling in Visual Studio 2012 an overview
 
Coded ui - lesson 2 - coded ui test builder
Coded ui - lesson 2 - coded ui test builderCoded ui - lesson 2 - coded ui test builder
Coded ui - lesson 2 - coded ui test builder
 
Unit testing with visual studio 2012
Unit testing with visual studio 2012Unit testing with visual studio 2012
Unit testing with visual studio 2012
 
Technical meeting automated testing with vs2010
Technical meeting automated testing with vs2010Technical meeting automated testing with vs2010
Technical meeting automated testing with vs2010
 
Coded ui - lesson 9 - test windows
Coded ui - lesson 9 - test windowsCoded ui - lesson 9 - test windows
Coded ui - lesson 9 - test windows
 
Testing with test_complete
Testing with test_completeTesting with test_complete
Testing with test_complete
 
Test complete, work done so far
Test complete, work done so farTest complete, work done so far
Test complete, work done so far
 
UI Testing Automation
UI Testing AutomationUI Testing Automation
UI Testing Automation
 
TestComplete – A Sophisticated Automated Testing Tool by SmartBear
TestComplete – A Sophisticated Automated Testing Tool by SmartBearTestComplete – A Sophisticated Automated Testing Tool by SmartBear
TestComplete – A Sophisticated Automated Testing Tool by SmartBear
 
Automating UI testing
Automating UI testingAutomating UI testing
Automating UI testing
 
Testing_with_TestComplete
Testing_with_TestCompleteTesting_with_TestComplete
Testing_with_TestComplete
 
Test Complete
Test CompleteTest Complete
Test Complete
 
Test automation - Building effective solutions
Test automation - Building effective solutionsTest automation - Building effective solutions
Test automation - Building effective solutions
 
Automation Testing with Test Complete
Automation Testing with Test CompleteAutomation Testing with Test Complete
Automation Testing with Test Complete
 
Open Source Software Testing Tools
Open Source Software Testing ToolsOpen Source Software Testing Tools
Open Source Software Testing Tools
 
Testing tools in visual studio
Testing tools in visual studioTesting tools in visual studio
Testing tools in visual studio
 

Destaque

Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional Testing
Nishant Worah
 
Testing responsive web design pdf
Testing responsive web design pdfTesting responsive web design pdf
Testing responsive web design pdf
crilusi
 
Installation testing
Installation testingInstallation testing
Installation testing
Robin0590
 
Regression testing
Regression testingRegression testing
Regression testing
Mohua Amin
 
Non Functional Testing_Sampath kumar Mohan
Non Functional Testing_Sampath kumar MohanNon Functional Testing_Sampath kumar Mohan
Non Functional Testing_Sampath kumar Mohan
Sampath kumar Mohan
 

Destaque (20)

User Interface Testing | Best Practices
User Interface Testing | Best Practices User Interface Testing | Best Practices
User Interface Testing | Best Practices
 
UI Testing Best Practices - An Expected Journey
UI Testing Best Practices - An Expected JourneyUI Testing Best Practices - An Expected Journey
UI Testing Best Practices - An Expected Journey
 
Non-functional Testing (NFT) Overview
Non-functional Testing (NFT) Overview Non-functional Testing (NFT) Overview
Non-functional Testing (NFT) Overview
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional Testing
 
Non-Functional testing
Non-Functional testingNon-Functional testing
Non-Functional testing
 
Testing responsive web design pdf
Testing responsive web design pdfTesting responsive web design pdf
Testing responsive web design pdf
 
The evolution of agile development process
The evolution of agile development processThe evolution of agile development process
The evolution of agile development process
 
Visual Regression Testing
Visual Regression TestingVisual Regression Testing
Visual Regression Testing
 
All you need to know about regression testing | David Tzemach
All you need to know about regression testing | David TzemachAll you need to know about regression testing | David Tzemach
All you need to know about regression testing | David Tzemach
 
Regression Testing
Regression TestingRegression Testing
Regression Testing
 
Agile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differencesAgile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differences
 
Non-functional testing
Non-functional testingNon-functional testing
Non-functional testing
 
Installation testing
Installation testingInstallation testing
Installation testing
 
What are the advantages of non functional testing
What are the advantages of non functional testingWhat are the advantages of non functional testing
What are the advantages of non functional testing
 
Regression testing
Regression testingRegression testing
Regression testing
 
Non functional testing
Non functional testingNon functional testing
Non functional testing
 
Non Functional Testing_Sampath kumar Mohan
Non Functional Testing_Sampath kumar MohanNon Functional Testing_Sampath kumar Mohan
Non Functional Testing_Sampath kumar Mohan
 
Installation testing
Installation testingInstallation testing
Installation testing
 
Introduction to android testing
Introduction to android testingIntroduction to android testing
Introduction to android testing
 
Android testing
Android testingAndroid testing
Android testing
 

Semelhante a Testing the User Interface - Coded UI Tests with Visual Studio 2010

YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14hYuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
Yury M
 
Improving Software quality for the Modern Web
Improving Software quality for the Modern WebImproving Software quality for the Modern Web
Improving Software quality for the Modern Web
Euan Garden
 
Mdc2010 Automated Mobile Testing
Mdc2010 Automated Mobile TestingMdc2010 Automated Mobile Testing
Mdc2010 Automated Mobile Testing
momobangalore
 
Ranjith kumar Nagisetty(AndiordApp and PostSiliconTest Engineer)_Resume
Ranjith kumar Nagisetty(AndiordApp and PostSiliconTest Engineer)_ResumeRanjith kumar Nagisetty(AndiordApp and PostSiliconTest Engineer)_Resume
Ranjith kumar Nagisetty(AndiordApp and PostSiliconTest Engineer)_Resume
ranjith nagisetty
 

Semelhante a Testing the User Interface - Coded UI Tests with Visual Studio 2010 (20)

YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14hYuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
 
Embedded software validation best practices with NI and RQM
Embedded software validation best practices with NI and RQMEmbedded software validation best practices with NI and RQM
Embedded software validation best practices with NI and RQM
 
Remote (Mobile) Usability Testing Lab
Remote (Mobile) Usability Testing LabRemote (Mobile) Usability Testing Lab
Remote (Mobile) Usability Testing Lab
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
 
Improving Software quality for the Modern Web
Improving Software quality for the Modern WebImproving Software quality for the Modern Web
Improving Software quality for the Modern Web
 
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...
 
Creating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran KinsbrunerCreating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran Kinsbruner
 
Agile Development in Aerospace and Defense
Agile Development in Aerospace and DefenseAgile Development in Aerospace and Defense
Agile Development in Aerospace and Defense
 
Mobitop
MobitopMobitop
Mobitop
 
Mobitop
MobitopMobitop
Mobitop
 
Mobitop
MobitopMobitop
Mobitop
 
Mobitop
MobitopMobitop
Mobitop
 
LDNSE: Testdroid for Mobile App and Web Testing (London Selenium Meetup)
LDNSE: Testdroid for Mobile App and Web Testing (London Selenium Meetup)LDNSE: Testdroid for Mobile App and Web Testing (London Selenium Meetup)
LDNSE: Testdroid for Mobile App and Web Testing (London Selenium Meetup)
 
Velocity Conference: Increasing Speed To Market In Mobile Development Through...
Velocity Conference: Increasing Speed To Market In Mobile Development Through...Velocity Conference: Increasing Speed To Market In Mobile Development Through...
Velocity Conference: Increasing Speed To Market In Mobile Development Through...
 
App Days 2016 Munich - Mobile Applications testing by Leaware
App Days 2016 Munich - Mobile Applications testing by LeawareApp Days 2016 Munich - Mobile Applications testing by Leaware
App Days 2016 Munich - Mobile Applications testing by Leaware
 
Android automation tools
Android automation toolsAndroid automation tools
Android automation tools
 
Zibrasoft | Software QA Testing Company Inida
Zibrasoft | Software QA Testing Company InidaZibrasoft | Software QA Testing Company Inida
Zibrasoft | Software QA Testing Company Inida
 
Mdc2010 Automated Mobile Testing
Mdc2010 Automated Mobile TestingMdc2010 Automated Mobile Testing
Mdc2010 Automated Mobile Testing
 
Ranjith kumar Nagisetty(AndiordApp and PostSiliconTest Engineer)_Resume
Ranjith kumar Nagisetty(AndiordApp and PostSiliconTest Engineer)_ResumeRanjith kumar Nagisetty(AndiordApp and PostSiliconTest Engineer)_Resume
Ranjith kumar Nagisetty(AndiordApp and PostSiliconTest Engineer)_Resume
 
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
 

Mais de Eric D. Boyd

Rock, Paper, Scissors: Winning Big with Game Playing Cloud Bots
Rock, Paper, Scissors: Winning Big with Game Playing Cloud BotsRock, Paper, Scissors: Winning Big with Game Playing Cloud Bots
Rock, Paper, Scissors: Winning Big with Game Playing Cloud Bots
Eric D. Boyd
 
Windows Azure Kick Start - Common Scenarios
Windows Azure Kick Start - Common ScenariosWindows Azure Kick Start - Common Scenarios
Windows Azure Kick Start - Common Scenarios
Eric D. Boyd
 
Windows Azure Kick Start - Explore Storage and SQL Azure
Windows Azure Kick Start - Explore Storage and SQL AzureWindows Azure Kick Start - Explore Storage and SQL Azure
Windows Azure Kick Start - Explore Storage and SQL Azure
Eric D. Boyd
 
Windows Azure Kick Start - Windows Azure Compute
Windows Azure Kick Start - Windows Azure ComputeWindows Azure Kick Start - Windows Azure Compute
Windows Azure Kick Start - Windows Azure Compute
Eric D. Boyd
 
Windows Azure Kick Start - Get Started in Cloud Computing
Windows Azure Kick Start - Get Started in Cloud ComputingWindows Azure Kick Start - Get Started in Cloud Computing
Windows Azure Kick Start - Get Started in Cloud Computing
Eric D. Boyd
 
Windows Azure Kick Start - Welcome
Windows Azure Kick Start - WelcomeWindows Azure Kick Start - Welcome
Windows Azure Kick Start - Welcome
Eric D. Boyd
 

Mais de Eric D. Boyd (11)

Rock, Paper, Scissors: Winning Big with Game Playing Cloud Bots
Rock, Paper, Scissors: Winning Big with Game Playing Cloud BotsRock, Paper, Scissors: Winning Big with Game Playing Cloud Bots
Rock, Paper, Scissors: Winning Big with Game Playing Cloud Bots
 
Windows Azure Kick Start - Common Scenarios
Windows Azure Kick Start - Common ScenariosWindows Azure Kick Start - Common Scenarios
Windows Azure Kick Start - Common Scenarios
 
Windows Azure Kick Start - Explore Storage and SQL Azure
Windows Azure Kick Start - Explore Storage and SQL AzureWindows Azure Kick Start - Explore Storage and SQL Azure
Windows Azure Kick Start - Explore Storage and SQL Azure
 
Windows Azure Kick Start - Windows Azure Compute
Windows Azure Kick Start - Windows Azure ComputeWindows Azure Kick Start - Windows Azure Compute
Windows Azure Kick Start - Windows Azure Compute
 
Windows Azure Kick Start - Get Started in Cloud Computing
Windows Azure Kick Start - Get Started in Cloud ComputingWindows Azure Kick Start - Get Started in Cloud Computing
Windows Azure Kick Start - Get Started in Cloud Computing
 
Windows Azure Kick Start - Welcome
Windows Azure Kick Start - WelcomeWindows Azure Kick Start - Welcome
Windows Azure Kick Start - Welcome
 
Moving Web Apps to the Cloud - Iowa User Group Tour, Feb 2012
Moving Web Apps to the Cloud - Iowa User Group Tour, Feb 2012Moving Web Apps to the Cloud - Iowa User Group Tour, Feb 2012
Moving Web Apps to the Cloud - Iowa User Group Tour, Feb 2012
 
HTML5 + Cloud: Reach Everyone, Everywhere
HTML5 + Cloud: Reach Everyone, EverywhereHTML5 + Cloud: Reach Everyone, Everywhere
HTML5 + Cloud: Reach Everyone, Everywhere
 
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011
Architecting for Massive Scalability - St. Louis Day of .NET 2011 - Aug 6, 2011
 
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
 
Understanding the Value of the Cloud - Centare Lunch & Learn - June 2, 2011
Understanding the Value of the Cloud - Centare Lunch & Learn - June 2, 2011Understanding the Value of the Cloud - Centare Lunch & Learn - June 2, 2011
Understanding the Value of the Cloud - Centare Lunch & Learn - June 2, 2011
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 

Testing the User Interface - Coded UI Tests with Visual Studio 2010

  • 1. Testing the User Interface Coded UI Tests with Visual Studio 2010 Eric D. Boyd
  • 2. Introduction Eric D. Boyd 15 years in technology
  • 5. I Work Here www.centare.com
  • 7. I Blog Here www.ericdboyd.com
  • 8. I Tweet Here www.twitter.com/EricDBoyd
  • 9. Getting to Know You Photo by www.rebeccasandulak.com/
  • 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
  • 17. Areas of the Project Lifecycle
  • 18. Story Time – Testing Failures
  • 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
  • 22. Challenges of UI Testing
  • 23. What are Coded UI Tests?
  • 24. Anatomy of Coded UI Tests
  • 25. Demo – Create Coded UI Tests
  • 26. Demo – Manual Testing
  • 27. Demo – Automating the Manual Tests
  • 28. Demo – Editing Existing Coded UI Test
  • 30. Demo – Data-Driven Coded UI Tests
  • 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
  • 35. Demo – Build Automation
  • 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
  • 41. Q&A