Overview
This introductory course is designed to familiarize testing professionals with the basics of testing web applications using Selenium. Testers can build, enhance, and maintain scripts using Visual Studio. Hands-on instruction is provided for those who want to explore the power of using Selenium. The focus is on the practical application of Selenium to resolve common web automated testing challenges. This course focuses on getting started with Selenium.
The C# module is designed to provide students with the foundation in C# necessary for RTTS' Advanced Selenium course. This module is intended for users of Selenium seeking to gain the C# skills necessary to customize test scripts.
This advanced-level course is designed to bring testing professionals who use Selenium to a new level of skill with the tool. Testers will learn how to use advanced Selenium features to enhance Selenium automated test suites using the
Visual Studio IDE Editor. Hands-on instruction is provided for those who want to explore the power of using Selenium.
The focus is on the practical application of Selenium to resolve web automated testing challenges with sophistication.
Objective
The main objective of this course is to show applications how to create fully automated testing suites for applications.
Specifically, participants of this program should be able to do the following upon completion of the course.
- 1. Describe the function and purpose of Selenium
- 2. Record automated scripts
- 3. Play back automated scripts
- 4. View and analyse results
- 5. Modify scripts to extend the capability to test the application
- 6. Configure Selenium WebDriver with Microsoft Visual Studio
- 7. Configure Custom Log Files
- 8. Explain key concepts related to C# technology and C# programming
- 9. Use decision constructs and loops
- 10. Create C# classes
- 11. Develop and use methods
- 12. Create and use single and multi-dimensional arrays
- 13. Use inheritance to extend classes
- 14. Understand inheritance and polymorphism
Course Outline :: Selenium With C#::
- 15. Parse strings using String, StringBuilders and Regular Expressions
- 16. Utilize advanced programming techniques to drive Selenium
- 17. Perform SQL calls to verify data
- 18. Programmatically search for web objects
- 19. Dynamically capture data from web controls
- 20. Design a data-driven testing framework in Selenium
- 21. Create distributed user testing to perform multi-user tests (Selenium Grid tests)
Prerequisites
To benefit from this course, you should have:
- 1. Some software development experience (recommended)
- 2. General understanding of Windows-based applications (desired)
- 3. Knowledge of C# programming is not a prerequisite for this course, but such knowledge is beneficial.
Target Audience
- 1. New users of Selenium who need to test Web applications. The course is designed primarily for testing
professionals who will be using the automation tools.
- 2. Quality assurance practitioners, managers, or team leaders who are responsible for interacting with
the testers or who need to ensure that the tools are being implemented fully and appropriately.
Day 1
- 1. Selenium WebDriver Setup
Selenium Overview
Configuration with Microsoft Visual Studio
Setting up Helper Files
Setting up Templates
Setting Up Test Scripts in Microsoft Visual Studio
Locating Web Elements
Conversion of Verification Statements
Creating Custom Log Files
Creating Test Reports
Useful WebElement Methods
Target Object Map Creation
Course Outline :: Selenium With C#::
Test Modularization
- 2. C# Language Fundamentals
Variable Types
Operators
Conditional Statements
Looping Statements
Arrays
- 3. Class Design
Class Creation
Constructors
Constructor Overloading
Namespaces and Using Statements
- 4. Methods
Method Creation
Method Reuse
Method Overloading
Passing Arguments
- 5. Containers
Working with Lists
Working with Dictionary Objects
Generics
- 6. Extending Classes
Construction of Classes
Inheritance
Polymorphism
Abstract Classes
Interface Classes
- 7. String Handling
String Manipulation
String Formatting
String Tokenizes
- 8. Selenium Commands
Verifying Page Elements
Introduction to Locating Elements
Course Outline :: Selenium With C#::
Locating elements by xPath
Locating elements by DOM
Introducing Matching Text Patterns
Matching Text Patterns – Regular expressions
The "AndWait" Commands
Sequence of Evaluation and Flow Control
Store Commands and Selenium Variables
Echo – The Selenese Print command
Day 2
- 9. Selenium WebDriver
Introduction to selenium WebDriver
Advantages of WebDriver
Setting up Eclipse
Downloading and configuring WebDriver in Eclipse
Converting Selenium commands to programming language (JAVA)
Detailed discussion about WebDriver commands
Handling different browsers
Create our own methods in WebDriver
Using RC commands from WebDriver project
Project structure organization
- 10. RTTS Framework
Configuration with Microsoft Visual Studio
Setting up Helper Files
Setting up Templates
- 11. Target Object Identification
Identifications Methods(Name, ID, CSS, DOM, etc...)
Dynamic Object Handling
- 12. Data Capture and Validation
Capturing Data From Tables
Validating Data From Tables
Capturing Data From Drop Down Lists
Validating Data From Drop Down Lists
Capturing Data From HTML Trees
Course Outline :: Selenium With C#::
Validating Data From HTML Trees
- 13. Logging Options
Working with Excel Logs
Adding Screen Shots to Log Files
Different Logging Options
- 14. Regular Expressions
Regular Expression Operators
Using Regular Expressions for Data Capture
Greedy and Reluctant Closure
- 15. Data Driven Tests
Connecting to Data Sources
Working with Parameters
Creating Dynamic Validation Statements
- 16. Working with Databases
Connecting to Databases
Executing Queries
Parsing through Result Set
- 17. Multi-Browser Testing
Setup required to run tests against IE and Chrome
Modifying Tests to Execute against Multiple Browsers
Creating Test Suites to Execute against Multiple Browsers
Day 3
- 18. How to use TestNG in Selenium
Introduction to TestNG
Why TestNG
Setting up TestNG
Working with TestNG
Advantages of TestNG over JUnit
Exploring TestNG Features
How to Use TestNG Annotations
Data Driven Testing TestNG
TestNG Execution Report
TestNG Results output folder walkthrough
Course Outline :: Selenium With C#::
TestNG Reporting features
- 19. Concepts of Framework
Introduction to Framework
About Framework
Use of Framework
Different types of Framework
Modular framework
Data Driven framework
Keyword driven framework
Hybrid framework
Different types of packages in Framework
Use of Framework
How to develop the framework
Integration of the framework
How to execute the scripts from framework
- 20. Selenium Grid
Setting up the Selenium Hub
Running Test Suites on Multiple Machines
Running Tests in Sequence
Running Tests in Parallel
Programme scope, delivery arrangements and suitability are confirmed during enquiry.