Test Automation with CodedUI

This course will teach you how you can build UI test automation with the Visual Studio CodedUI for Web, WPF, XAML based store apps and Windows Forms based applications
Course info
Rating
(476)
Level
Intermediate
Updated
Feb 11, 2014
Duration
5h 22m
Table of contents
Course Introducton
CodedUI Introduction
CodedUI Record and Playback
CodedUI Understanding the Object Model
Managing Search Configurations and Playback Options
Handling Big Projects
Analyzing Playback Failures
Cross Browser Playback
Data driven UI Tests
Description
Course info
Rating
(476)
Level
Intermediate
Updated
Feb 11, 2014
Duration
5h 22m
Description

With Microsoft Visual Studio CodedUI you can build UI tests for the most common UI technologies including HTML and JavaScript based web applications, Windows Forms, WPF and XAML Based Store apps. In this course you will learn how you can use Microsoft CodedUI test technology to build UI test automation projects that will help you run tests via the user interface of your application. This enables you to speed up the validation of fully functional scenarios on your application which is an important step to enable continuous delivery. CodedUI integrates with the Microsoft ALM tool suite, and can help you build insights in your application quality on a daily basis. In this course we look in detail how CodedUI works. We will start with Record and Playback. Then we look at how to build your UI tests by hand coding against the CodedUI object model. Then we spend a good deal of time looking at how you can build a very good maintainable UI test automation project. Since a good UI test will live as long as the application it is therefore crucial to learn how to build a Test automation framework for your application that is maintainable, and that will keep up with changes in the application throughout its lifecycle. We will also look at analyzing playback failures and cross browser playback. This course concludes by looking at how to build key word driven UI tests by using data driven excel sheets to manage and drive your test scenarios.

About the author
About the author

Marcel is the co-founder and CTO of Xpirit, a high-end consulting firm based in Hilversum, Netherlands. Helping organizations transform towards a high speed, innovative, and productive organization is his passion.

More from the author
More courses by Marcel de Vries
Section Introduction Transcripts
Section Introduction Transcripts

Course Introducton
Welcome to this Pluralsight course on UI Test Automation with CodedUI. In this course we will have a look at how you can build UI test automation with Visual Studio premium tools. In this course introduction I will show you what the goals are of this course, how the modules are structured, and what you should have learned once you have finished all the modules. My name is Marcel de Vries, and I'm the Pluralsight author of this course. You can always reach me on Twitter @macelv, and you can find my profile on LinkedIn.

CodedUI Introduction
Automated UI tests enable you to test if your UI is functioning correctly after your code changes. CodedUI tests are quicker to run than manual tests meaning that you can run them more frequently and therefore are a big enabler for continuous delivery. Welcome to module 2 of this Pluralsight course on CodedUI Testing, CodedUI Introduction Getting Started. My name is Marcel de Vries, and if you have any questions when attending this course please feel free to ping me on Twitter @macelv.

CodedUI Record and Playback
One of the easiest ways to use CodedUI is by using record and playback. It will give you the fastest result that you can show to your team, but is it also the smartest way of using CodedUI? Is record and playback going to survive changes in the UI that inevitably will happen during the lifecycle of your application, and what is the way that these recordings are stored and maintained over time? In this module I will answer these questions and give you some tips on how you can maximize the use of these features while not burning your fingers in the long run. Welcome to Module 3 of this Pluralsight course on CodedUI Testing. This module is called CodedUI Record and Playback: Understanding the Limits of Fast and Easy. My name is Marcel de Vries, and if you have any questions when attending this course please feel free to ping me on Twitter @marcelv.

CodedUI Understanding the Object Model
Using tools with magic buttons is one of the things that's always bothered me. We have by now seen that CodedUI can use record and playback to build a set of test cases that can validate the state of the user interface while running through a bunch of actions that we recorded. Personally when I'm using tools I want to understand what they're doing. Understanding how things work make me more productive and also help me understand failures of the tool when they occur. Therefore, I feel it's worthwhile to dive deeper into the technology and also learn better ways of building tests by just interacting with the object model by hand. Welcome to Module 4 of this Pluralsight course on CodedUI Testing. This module is called CodedUI Understanding the Object Model: How Do You Find and Interact with Controls From Code? My name is Marcel de Vries, and if you have any questions while attending this course please feel free to ping me on Twitter @marcelv.

Managing Search Configurations and Playback Options
By now you should have some basic understanding of how CodedUI works and to start building your first test automation project, but before you start your new project you might just want to wait and finish this module because there are some things we did not cover yet that will help you a lot in making your tests more robust and resilient to change. In this module I will show you the additional capabilities that CodedUI has to make your tests more resilient to changes in the application's user interface. For this we will have a look at the search configuration options that we can specify and how we can set the playback options to manage the way CodedUI tests are played back on our code. Welcome to Module 5 of this Pluralsight training on CodedUI. This module is called Managing Search Configurations and Playback Options: How CodedUI Enables Change Resilient Tests. My name is Marcel de Vries, and if you have any questions while attending this course Don't hesitate to ping me on Twitter @marcelv.

Handling Big Projects
By now you learned how you can use CodedUI to automate your tests for any technology we run on Windows like WPF, Windows Forms, Web-based applications, and XAML-based store applications. All the previous modules showed you simple examples that worked nicely in isolation, but none of them were combined together. Not that combining is an issue, but it's more about how can I organize my CodedUI tests in such a way that projects that you build are maintainable and don't become a drag in your project. In this module I want to show you how you can achieve this. I will show you some simple ways on organizing your code, writing your CodedUI tests using a pattern called the Page Object Pattern that is really popular to keep your tests nice and modular and make them easy to maintain. Welcome to this sixth module of the Pluralsight training on CodedUI, Handling Big Projects: Organizing Your Tests to Keep Them Maintainable. My name is Marcel de Vries, and if you have any questions while attending this course don't hesitate to ping me on Twitter @marcelv.

Analyzing Playback Failures
Unfortunately failure happens, but what can we do to diagnose a test that fails? How do we know what a CodedUI engine was looking for, and why did it not find the control it found all the other times the test ran? This is what you will learn in this module. Welcome to Module 7 of this Pluralsight training on CodedUI testing. This is the module Analyzing Playback Failures: Tips and Tricks to Fix Your Failing Tests. My name is Marcel de Vries, and if you have any questions while attending this course don't hesitate to ping me on Twitter @marcelv.

Cross Browser Playback
In all the previous modules we looked at how we can create UI automation to test our applications using the user interface. One of the challenges web developers face these days is how you can validate if the website works properly on different browsers that are used. With the trend of the web moving towards HTML5 we see more and more applications being built with HTML and JavaScript, and what we see is that a ton of libraries emerge that claim to work across browsers. Unfortunately this claim is not always true; therefore, whether you're using these frameworks or not you should test crucial parts of your website or application on a variety of browsers, but it's also a tedious job running through all those scenarios on each and every browser and to see if your application runs as suspected. Especially these days when consumers are still in favor of Internet Explorer while web developers are using Chrome most of the time, the number of bugs you see in websites these days seems to become larger and larger each day, at least seen from an end user perspective. Therefore, it's more an more important to find a way to efficiently test your application's UI with multiple browsers and preferably in an automated way. This is what we're going to talk about in this module. Welcome to Module 8 of this Pluralsight training on CodedUI testing. This is the module Cross Browser Playback: Run Your Web UI Tests on Chrome, Firefox, and IE. My name is Marcel de Vries, and if you have any questions while attending this course don't hesitate to ping me on Twitter @marcelv. I will try to respond as soon as possible.

Data driven UI Tests
Now that we know how to build our test automation projects, let's have a look at how we can make our tests more efficient. What I mean with that is how can we run more test scenarios without hand coding each and every scenario? For this we will use the concept of data driven tests. Data driven tests enable you to run a set of scenarios based on different user's input. Welcome to this ninth and final module of this Pluralsight training on CodedUI, Data Driven UI Tests: Drive UI Tests from MTM and Excel. My name is Marcel de Vries, and if you have any questions while attending this course, don't hesitate to ping me on Twitter @marcelv. I will try to respond as soon as possible.