Automated UI Testing in C#

Course

Online

£ 150 + VAT

Description

  • Type

    Course

  • Methodology

    Online

  • Start date

    Different dates available

Build a UI testing framework step-by-step.This video is the practical step by step guide for UI test automation framework development from the scratch. This course is targeted to C#. We’ll exercise the WebDriver, Appium (for mobile applications) and SpecFlow.While going throughout the course you will be able to see the step-by-step test automation framework development process and how it changes the shape of tests.At the end you will have a vision of what framework is, how it looks like and what items should be initially covered at the early beginning of test automation development. Also, you will learn typical solutions for the most common problems with different UI automation solutionsAbout the AuthorMykola Kolisnyk has been working in test automation since 2004.
He has been involved with various activities including creating test automation solutions from scratch, leading test automation teams, and working as a consultant with test automation processes. During his working career, he has had experience with different test automation tools such as Mercury WinRunner, MicroFocus SilkTest, SmartBear TestComplete, Selenium-RC, WebDriver, Appium, SoapUI, BDD frameworks, and many other different engines and solutions. He has had experience with multiple programming technologies based on Java, C#, Ruby, and so on, and with different domain areas such as healthcare, mobile, telecoms, social networking, business process modeling, performance and talent management, multimedia, e-commerce, and investment banking.

Facilities

Location

Start date

Online

Start date

Different dates availableEnrolment now open

About this course

Available framework types and what they look like
Practical steps to build initial frameworks
Typical solutions for typical problems with UI automation
Typical framework improvements when the entire test automation solution gets more complicated
Typical recommendations for each step in framework creation/improvement
Real-life example of UI a test automation framework with C#

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

This centre's achievements

2021

All courses are up to date

The average rating is higher than 3.7

More than 50 reviews in the last 12 months

This centre has featured on Emagister for 4 years

Subjects

  • Design
  • Approach
  • Testing
  • Options
  • UI
  • Design techniques
  • Web
  • Web Development
  • Web Designer
  • Web Programming

Course programme

Introduction and Initial Setup 2 lectures 24:26 The Course Overview This video provides an overview of the entire course. Overview of Test Frameworks and Setup This is the initial video for the course where we introduce you to the topic, define goals, and perform initial setup. • Have the background on the UI test frameworks • Define goals of the course • Initial setup demonstration Introduction and Initial Setup 2 lectures 24:26 The Course Overview This video provides an overview of the entire course. Overview of Test Frameworks and Setup This is the initial video for the course where we introduce you to the topic, define goals, and perform initial setup. • Have the background on the UI test frameworks • Define goals of the course • Initial setup demonstration The Course Overview This video provides an overview of the entire course. The Course Overview This video provides an overview of the entire course. The Course Overview This video provides an overview of the entire course. The Course Overview This video provides an overview of the entire course. This video provides an overview of the entire course. This video provides an overview of the entire course. Overview of Test Frameworks and Setup This is the initial video for the course where we introduce you to the topic, define goals, and perform initial setup. • Have the background on the UI test frameworks • Define goals of the course • Initial setup demonstration Overview of Test Frameworks and Setup This is the initial video for the course where we introduce you to the topic, define goals, and perform initial setup. • Have the background on the UI test frameworks • Define goals of the course • Initial setup demonstration Overview of Test Frameworks and Setup This is the initial video for the course where we introduce you to the topic, define goals, and perform initial setup. • Have the background on the UI test frameworks • Define goals of the course • Initial setup demonstration Overview of Test Frameworks and Setup This is the initial video for the course where we introduce you to the topic, define goals, and perform initial setup. • Have the background on the UI test frameworks • Define goals of the course • Initial setup demonstration This is the initial video for the course where we introduce you to the topic, define goals, and perform initial setup. • Have the background on the UI test frameworks • Define goals of the course • Initial setup demonstration This is the initial video for the course where we introduce you to the topic, define goals, and perform initial setup. • Have the background on the UI test frameworks • Define goals of the course • Initial setup demonstration Writing Sample Tests 4 lectures 19:00 Creating Sample Scenarios Here we create some initial test scenarios and apply the basic enhancements. • Record sample tests • Clean up the code • Optimize locators Adding Configuration In this video, we'll add an ability to configure tests to run under different environments with different settings. • Define configurable options • Create configuration manipulation objects • Replace explicit parameters with the configuration object Data-Drive Tests In this video, we will talk about the data-driven approach, what it is, and where it is applicable. • Define where data-driven is applicable • Extract the parameters • Apply parameterization Adapting Tests for Parallel Execution In this video, we'll take a look at the enhancements required to make our tests running concurrently, in parallel to each other. • Define what concurrent runs usually impact • Find impact points in the current solution • Make modifications to support the multithreaded runs Writing Sample Tests 4 lectures 19:00 Creating Sample Scenarios Here we create some initial test scenarios and apply the basic enhancements. • Record sample tests • Clean up the code • Optimize locators Adding Configuration In this video, we'll add an ability to configure tests to run under different environments with different settings. • Define configurable options • Create configuration manipulation objects • Replace explicit parameters with the configuration object Data-Drive Tests In this video, we will talk about the data-driven approach, what it is, and where it is applicable. • Define where data-driven is applicable • Extract the parameters • Apply parameterization Adapting Tests for Parallel Execution In this video, we'll take a look at the enhancements required to make our tests running concurrently, in parallel to each other. • Define what concurrent runs usually impact • Find impact points in the current solution • Make modifications to support the multithreaded runs Creating Sample Scenarios Here we create some initial test scenarios and apply the basic enhancements. • Record sample tests • Clean up the code • Optimize locators Creating Sample Scenarios Here we create some initial test scenarios and apply the basic enhancements. • Record sample tests • Clean up the code • Optimize locators Creating Sample Scenarios Here we create some initial test scenarios and apply the basic enhancements. • Record sample tests • Clean up the code • Optimize locators Creating Sample Scenarios Here we create some initial test scenarios and apply the basic enhancements. • Record sample tests • Clean up the code • Optimize locators Here we create some initial test scenarios and apply the basic enhancements. • Record sample tests • Clean up the code • Optimize locators Here we create some initial test scenarios and apply the basic enhancements. • Record sample tests • Clean up the code • Optimize locators Adding Configuration In this video, we'll add an ability to configure tests to run under different environments with different settings. • Define configurable options • Create configuration manipulation objects • Replace explicit parameters with the configuration object Adding Configuration In this video, we'll add an ability to configure tests to run under different environments with different settings. • Define configurable options • Create configuration manipulation objects • Replace explicit parameters with the configuration object Adding Configuration In this video, we'll add an ability to configure tests to run under different environments with different settings. • Define configurable options • Create configuration manipulation objects • Replace explicit parameters with the configuration object Adding Configuration In this video, we'll add an ability to configure tests to run under different environments with different settings. • Define configurable options • Create configuration manipulation objects • Replace explicit parameters with the configuration object In this video, we'll add an ability to configure tests to run under different environments with different settings. • Define configurable options • Create configuration manipulation objects • Replace explicit parameters with the configuration object In this video, we'll add an ability to configure tests to run under different environments with different settings. • Define configurable options • Create configuration manipulation objects • Replace explicit parameters with the configuration object Data-Drive Tests In this video, we will talk about the data-driven approach, what it is, and where it is applicable. • Define where data-driven is applicable • Extract the parameters • Apply parameterization Data-Drive Tests In this video, we will talk about the data-driven approach, what it is, and where it is applicable. • Define where data-driven is applicable • Extract the parameters • Apply parameterization Data-Drive Tests In this video, we will talk about the data-driven approach, what it is, and where it is applicable. • Define where data-driven is applicable • Extract the parameters • Apply parameterization Data-Drive Tests In this video, we will talk about the data-driven approach, what it is, and where it is applicable. • Define where data-driven is applicable • Extract the parameters • Apply parameterization In this video, we will talk about the data-driven approach, what it is, and where it is applicable. • Define where data-driven is applicable • Extract the parameters • Apply parameterization In this video, we will talk about the data-driven approach, what it is, and where it is applicable. • Define where data-driven is applicable • Extract the parameters • Apply parameterization Adapting Tests for Parallel Execution In this video, we'll take a look at the enhancements required to make our tests running concurrently, in parallel to each other. • Define what concurrent runs usually impact • Find impact points in the current solution • Make modifications to support the multithreaded runs Adapting Tests for Parallel Execution In this video, we'll take a look at the enhancements required to make our tests running concurrently, in parallel to each other. • Define what concurrent runs usually impact • Find impact points in the current solution • Make modifications to support the multithreaded runs Adapting Tests for Parallel Execution In this video, we'll take a look at the enhancements required to make our tests running concurrently, in parallel to each other. • Define what concurrent runs usually impact • Find impact points in the current solution • Make modifications to support the multithreaded runs Adapting Tests for Parallel Execution In this video, we'll take a look at the enhancements required to make our tests running concurrently, in parallel to each other. • Define what concurrent runs usually impact • Find impact points in the current solution • Make modifications to support the multithreaded runs In this video, we'll take a look at the enhancements required to make our tests running concurrently, in parallel to each other. • Define what concurrent runs usually impact • Find impact points in the current solution • Make modifications to support the multithreaded runs In this video, we'll take a look at the enhancements required to make our tests running concurrently, in parallel to each other. • Define what concurrent runs usually impact • Find impact points in the current solution • Make modifications to support the multithreaded runs Wrapping Controls and Pages 5 lectures 27:31 General Idea Overview and Main Design Linear recorded tests are too sensitive to changes. We need to add an unified structure to keep proper references to objects we interact with. Before going to the implementation, we need to define a general approach, design, and steps. • Define the idea of wrapping pages and elements • Define the class structure for pages and elements • Define basic road map for wrappers implementation Wrapping Controls A simple recorded test has a lot of duplications, especially, when we interact with the same control multiple times. The solution is to create classes containing functionality interacting with specific control. • Create the base Control class • Extend the base class to classes for specific control types • Update tests to use control objects Wrapping Pages Pages can be represented as dedicated classes where fields reflect the control. Each page class contains functionality applied to the entire page. This brings a solid structure to the test framework. • Define the base Page class • Define application specific pages • Update tests using page objects Adding Page Factory Pages initialization can be either simple or complex. Having Page Factory, we can initialize pages in a uniform way. • Define the Page Factory idea • Implement the PageFactory object • Apply PageFactory to the tests Generating Screenshots Screenshots are useful to give actual application under test view, especially, in case of error. • Define the format of screenshot generation • Implement screenshot generation • Add screenshot generation to sample test Wrapping Controls and Pages. 5 lectures 27:31 General Idea Overview and Main Design Linear recorded tests are too sensitive to changes. We need to add an unified structure to keep proper references to objects we interact with. Before going to the implementation, we need to define a general approach, design, and steps. • Define the idea of wrapping pages and elements • Define the class structure for pages and elements • Define basic road map for wrappers implementation Wrapping Controls A simple recorded test has a lot of duplications, especially, when we interact with the same control multiple times. The solution is to create classes containing functionality interacting with specific control. • Create the base Control class • Extend the base class to classes for specific control types • Update tests to use control objects Wrapping Pages Pages can be represented as dedicated classes where fields reflect the control. Each page class contains functionality applied to the entire page. This brings a solid structure to the test framework • ...

Additional information

Basic Knowledge of C# is required

Automated UI Testing in C#

£ 150 + VAT