Duration
3 days
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.
- Describe the function and purpose of Selenium
- Record automated scripts
- Play back automated scripts
- View and analyse results
- Modify scripts to extend the capability to test the application
- Configure Selenium WebDriver with Microsoft Visual Studio
- Configure Custom Log Files
- Explain key concepts related to C# technology and C# programming
- Use decision constructs and loops
- Create C# classes
- Develop and use methods
- Create and use single and multi-dimensional arrays
- Use inheritance to extend classes
- Understand inheritance and polymorphism
- Parse strings using String, StringBuilders and Regular Expressions
- Utilize advanced programming techniques to drive Selenium
- Perform SQL calls to verify data
- Programmatically search for web objects
- Dynamically capture data from web controls
- Design a data-driven testing framework in Selenium
- Create distributed user testing to perform multi-user tests (Selenium Grid tests)
Prerequisites
To benefit from this course, you should have:
- Some software development experience (recommended)
- General understanding of Windows-based applications (desired)
- Knowledge of C# programming is not a prerequisite for this course, but such knowledge is beneficial.
Target Audience
- 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.
- 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
- 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
- Test Modularization
- C# Language Fundamentals
- Variable Types
- Operators
- Conditional Statements
- Looping Statements
- Arrays
- Class Design
- Class Creation
- Constructors
- Constructor Overloading
- Namespaces and Using Statements
- Methods
- Method Creation
- Method Reuse
- Method Overloading
- Passing Arguments
- Containers
- Working with Lists
- Working with Dictionary Objects
- Generics
- Extending Classes
- Construction of Classes
- Inheritance
- Polymorphism
- Abstract Classes
- Interface Classes
- String Handling
- String Manipulation
- String Formatting
- String Tokenizes
- Selenium Commands
- Verifying Page Elements
- Introduction to Locating Elements
- 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
- 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
- RTTS Framework
- Configuration with Microsoft Visual Studio
- Setting up Helper Files
- Setting up Templates
- Target Object Identification
- Identifications Methods(Name, ID, CSS, DOM, etc...)
- Dynamic Object Handling
- 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
- Validating Data From HTML Trees
- Logging Options
- Working with Excel Logs
- Adding Screen Shots to Log Files
- Different Logging Options
- Regular Expressions
- Regular Expression Operators
- Using Regular Expressions for Data Capture
- Greedy and Reluctant Closure
- Data Driven Tests
- Connecting to Data Sources
- Working with Parameters
- Creating Dynamic Validation Statements
- Working with Databases
- Connecting to Databases
- Executing Queries
- Parsing through Result Set
- 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
- 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
- TestNG Reporting features
- 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
- 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.