We deliver whatever we promise, Automation is an art, Feel the difference with us.

Enroll Today!

Course Overview   Live Training at $399 Videos at $29

In this course we cover the Automation artifacts of Microsoft Testing Tool Coded UI/VSTS. The main focus of the course is to build an automation Testing solution by utilizing capabilities of Coded UI Test. Our main intent is to help individual to implement an END to END automation testing using Hand Coding. Key point covered but not limited to:

  • Automation Fundamentals              
  • C # Programming
  • Hand Coding in Coded UI                                                       Scroll Down for Demo Video
  • Framework Development
  • Automation using Object Oriented Design
  • Test Management thru MTM and TFS
  • Result Reporting and Automated Email Alerts

Syllabus

                                                                                           MODULE 1 - Coded UI Automation Testing – Perquisite

 

Topic - 1: Application Life Cycle Management ALM (VSTS/CodedUI/TFS/MTM)

  • Application Life Cycle in Microsoft Visual Studio
  • Why TFS is used and importance in Testing
  • Microsoft Test Manager (MTM) and its role in End to End Test Management
  • Big Picture of VSTS, TFS and MTM and its integration
  • Coded UI Test vs. Unit Test Vs Web Performance & Load Test
  • Coded UI (VSTS) overview & its perquisites
  • CodedUI Automation Testing Course orientation

Topic - 2: C# Programming - Part I (Basics)

  • Getting started with C# Programming
  • Operators in C# (Arithmetic, Logical operator, Unary operator etc..)
  • Decision Control Statements in C# (if, if-else, switch, ternary operator)
  • Loops in C# Programming (While loop, for loop, foreach loop)
  • Collections in C# and its usage in CodedUI testing
  • Arrays, ArrayList, Hashtable and Dictionary in C#
  • Real time examples of arrays in Automation Testing

Topic - 3: C# Programming – Part II (Programming in Detail)

  • User Defined Function or Method and its importance in CodedUI Test
  • Different types of Functions depending upon need
  • Working with Function arguments and return type
  • Scope of Variable( Local, Global, Static)
  • Call by Value and Call by reference
  • Function Overloading
  • Static Function and static variable

Topic - 4: C# Programming – Part III (Object Oriented Programming)

  • OOps and implementation of Classes and Objects in C#
  • Constructor/ Destructor and its types
  • Understanding Encapsulation (Data Hiding)
  • Inheritance, its types and implementation in C#
  • Polymorphism, its types and implementation in C#
  • Abstract classes and Interfaces in C#
  • Creating Namespaces and benefits in CodedUI testing

Topic - 5: C# Programming – Part III (Properties & Exception Handling)

  • Why to use Properties, getter and setter Methods to implement Property
  • Implementation of Properties in C# ( Read Only, Write Only, Read/Write)
  • Understanding Exception Handling and importance in CodedUI
  • Creating and throwing Exceptions in C#
  • Compiler generated Exceptions
  • Handling Exceptions using TRY - CATCH Block
  • FINALLY block and its role in exception handling

Topic - 6: C# Programming – Part IV (Database Connections - ADO.Net)

  • What is ADO.NET and SQLConnection objects
  • Understanding System.Data, .SqlClient and .Configuration namespaces
  • Opening/closing database connection and best practices
  • usage of USING in the closing database connections
  • Establishing connections from web.config and App.config
  • SqlCommand,SqlDataReader,SqlDataAdapter,DataSet in ado.net
  • Writing SQL Queries to perform CRUD operations in database
                                                                                    MODULE 2 - Hand Coding in CodedUI with C#  (NO RECORDING at ALL)

 

Topic - 7: Hand Coding in CodedUI Test using C# - UITestControl

  • Understanding Microsoft.VisualStudio.TestTools.UITesting namespace
  • Understanding Scripting Flow
  • UITestControl and UITestControlCollection
  • Creating controls using C# in coded UI Test
  • Traversing Parent and Child Controls
  • Applying Search and Filter Properties
  • Assigning properties to the controls
  • Counting total number of links/editbox..etc in a page
  • Populating all the total controls in a page
  • Introducing UI validation/assertions
  • Working with Edit Boxes and Buttons
  • My first End to End test Case CodedUI Test by HAND CODING

Topic - 8: Automating WebBased App - Technology Specific Controls

  • Understanding Microsoft.VisualStudio.TestTools.UITesting.Htmlcontrols
  • Creating UI Controls in C# using .Htmlcontrols
  • Simplification of UI Controls in CodedUI test
  • Accessing Properties of UI Controls using .HtmlControls
  • Multiple ways of Working with text Box (htmledit)
  • Working with Combo Box, Radio Buttons, CheckBox, Table etc
  • Mouse Actions (Click, doubleclick, hover etc..)
  • Bulk Extraction of Web UI controls in a web page using .HtmlControl
  • Working with Dynamic Assertions
  • Developing End to End Web based CodedUI test
  • Finding response header/code of a URL
  • Automated Script to find the broken links in a Page and building smoke Test

Topic - 9: Automating WebBased App - Browser Specific Concepts

  • BrowserWindow Properties (Uri/Version/CloseOnPlaybackCleanup etc.) 
  • BrowserWindow Methods(Refresh/ClearCache/FromProcess/ClearCookies) 
  • Killing Browser Instances(Chrome/ InternetExplorer/Firefox/Chrome etc)
  • Using CodedUI Test for Browser Compatibility Testing
  • Integrating Selenium Web Driver for execution in different Browser
  • Working with Selenium web Driver dlls for Visual Studio
  • Writing Automated Test with Selenium web driver within codedUI Test in C#

Topic -10: Test Attributes in Visual Studio/CodedUI Test

  • What is a Test Attribute and usage of Test Attributes
  • Different Types of Test Attributes in CodedUI Test
  • Categorizing & Tracking execution in CodedUI Test using Attributes
  • Using [TestInitialize] & [TestCleanup] attribute in CodedUI Test
  • Using [ClassInitilize] &  [ClassCleanUp] in CodedUI Test
  •  [Obselete] Attribute and usage in Automation Framework development
  • Usage of Test Attributes in Build Automation

Topic - 11: Synchronization in Coded UI Test

  • What is Synchronization and importance in Automation Testing
  • Ways of handling Synchronization issues in Coded UI Test
  • WaitForControlReady, WaitForControlEnabled, WaitForControlExist
  • WaitForControlNotExist, WaitForControlPropertyEqual,WaitForControlPropertyNotEqual
  • WaitForControlCondition, WaitForCondition
  • Playback.wait(), Thread.sleep()

Topic - 12: Assertions or Validations or CheckPoints in CodedUI Test

  • What is assertion, script is incomplete without Assertion
  • Difference between Assertions and Error Handling
  • Types of Assertions  (UIValidation/Database Validation, Property Validation etc.)
  • Assertion Types - AreEqual, AreNotEqual, AreSame, Fail, Inconclusive
  • StringAssert, IsInstanceOfType, IsNot InstanceOfType, IsNotNull, IsNull
  • Populating values in Assertions

Topic - 13: Error Handling and Recovery Scenario in CodedUI Test

  • What are Recovery Scenarios and importance in CodedUI Test
  • Difference between Error Handling and Recovery Scenarios
  • Trigger Event and Recovery Operations
  • Safe Click or Safe - Type or Safe - Select
  • Designing Recovery Scenarios using TRY - CATCH Block

Topic - 14: Data Driven Testing in CodedUI

  • What is Data Driven Testing or DataBinding Tests?
  • Supported data sources in CodedUI
  • Building Data Sources
  • Writing Data-Driven Tests
  • Implementing Assertions in Data Driven Framework

Topic - 15: Automating WPF Based Application  (WPFControls)

  • Understanding Microsoft.VisualStudio.TestTools.UITesting.Wpfcontrols
  • Approach of creating a WPF Controls and how it's different from HTML
  • Creating UI Controls in C# using .Wpfcontrols
  • Creating Hierarchy of Controls - Creating Parent and Child controls
  • Creating Input Box, Radio Button, Checkbox, List Box, Combo Box, Hyperlink
  • Writing scripts utilizing WPF controls
  • Assigning properties to the controls
  • Challenges and solution performing Actions on WPF Controls

Topic - 16: Automating Windows Based Application  (WINControls)

  • Understanding Microsoft.VisualStudio.TestTools.UITesting.Wincontrols
  • Approach of creating a WIN Controls and how it's different from HTML control
  • Creating UI Controls in C# using .WIN controls
  • Creating Input Box, Radio Button, Checkbox, List Box, Combo Box, Hyperlink
  • Performing actions on Combo Box, Radio Button, CheckBox etc..
  • Assigning properties to the controls
  • Designing CodedUI script for WIN based application
  • Challenges and solution performing Actions on Win Controls

 

                                                                                           MODULE 3 - Automation Using CodedUI Test Feature (Record & Playback)

 

Topic - 17: Automating Application using Recording (CodedUI Test )

  • Advantages and Disadvantages of Recording a Test
  • Analyzing the Recorded Code
  • UIMap.Designer.cs, UIMap.cs, UIMap.uitest
  • Optimizing/Modifying the Recorded Code
  • Splitting the actions into multiple Methods
  • Implementing Assertions
  • Mis-concepts of Recording for Automation Testing
  • When to use Recording for automating applications

Topic - 18: Designing Object Repository using UIMAP

  • What is UI MAP and it benefits
  • UIMap.Designer.cs, UIMap.cs, UIMap.uitest
  • UI Map Properties and UI Map editor
  • Designing Objects/Controls using UIMap
  • Updating Objects/Controls using UIMap
  • Deleting Objects/Controls using UIMap
  • Designing Controls in a Modular approach (Multiple - UIMap)
  • Drawback of generating objects using UIMap

 

                                                                                           MODULE 4 - Automation Framework Development in CodedUI Test

 

Topic - 19: Automation Approach in Coded UI

  • Approaches of Automation in Coded UI Test (PROS & CONS)
  • Approach 1 - Recording and Playback with code Optimization
  • Approach 2- Mixed Approach (Capturing Object and writing methods)
  • Approach 3 - Hand Coding (Writing code in C#)
  • Which approach I should use and why?
  • Object Oriented Design Approach in CodedUI Automation

 

Topic - 20: Framework Development in Coded UI(3 - tier Architecture)

  • 3 – Tier Automation Framework architecture
  • Creating shared UI controls (Objects Library)
  • Designing Generic Functions and creating re-usable libraries
  • Recovery Scenarios and Safe Click
  • Test Execution (Batch Execution and Ordered Test)
  • Result Reporting and Sending email Alerts

Topic - 21: Framework Development in Coded UI (Object Oriented Design)

  • Understanding Object Oriented Design
  • Page object Model (POM) and its benefits
  • Setting up Automation Framework Using PageObjects
  • Building Page Objects and Creating SharedActions class
  • Building Features/Actions using C# in OOD
  • Building End to End in Object Oriented Desgin and POM

Topic - 22: End to End Test Management (Microsoft Test Manager)

  • Test Automation Process in TFS, MTM, CodedUI
  • Create and Configure Test Plan in Microsoft Test Manager
  • Building Test Suites in MTM (Static/Query Based and Requirement Based)
  • Optimal Test Case Development(Shared Steps/Parameters)
  • Adding Solution to TFS (Checkin/Checkout), Associating CodedUI Test to MTM
  • Setting up Test Agent and Test Controller for Test Execution

Demo Video

  • 1. Application LifeCycle(VSTS/CodedUI/TFS/MTM)
  • 2A. C# Programming - Part I (Basics)
  • 7A. HandCoding in CodedUI using C# - Part 1
  • 7B. HandCoding in CodedUI using C#
  • 22A. Create and Configure Test Plan in MTM
  • 22B. Building Test Suites in MTM
  • 22C. Test Case design(Shared Steps/Parameters)