Intermediate Program on Selenium with Java
Creating automated tests for a web application can be challenging. Two of the biggest barriers to getting started are picking an automation tool and developing a framework for writing the tests. This course explores how to use the popular browser automation framework, Selenium, to create automated tests for web applications. We will examine using Selenium to directly record from within a Firefox browser using Selenium’s API. We will also explore how to distribute tests over multiple machines using Selenium Server’s grid capabilities. The course concludes with the implementation of a simple, maintainable framework for testing a web application using Selenium.
The course is targeted at individuals who intend to become an expert in Selenium to test the application effectively should enroll in this course, including:
- Novice Engineers / Quality Assurance Specialists
- Software developers / Senior Developers
- Test Engineers / Senior Test Engineers
- Project / Development / Test Managers
- Project / Development / Test Leads
- Anyone involved in testing activities
Anyone in the above role, in any industry or domain with the basic OOPS knowledge can attend this course.
Module 1 – Java Language Concepts
- What is Java?
- Versioning
- The Java Virtual Machine
- Writing a Java Program
- Packages
- Primitive Data Types
- Comments
- Control Flow Statements
- The if Statement
- The switch Statement
- The while and do while Statements
- The for Statement
- The break Statement
- The continue Statement
- Operators
- Casts and Conversions
- Keywords
Module 2 – Object Oriented Programming
- Defining New Data Types
- Constructors
- The String Class
- String Literals
- Documentation
- Packages
- The StringBuffer Class
- Naming Conventions
- The Date Class
- The import Statement
- Deprecation
- The StringTokenizer Class
- The Math Class
- The System Class
- Wrapper Classes
Module 3 – Arrays
- Processing Arrays
- Copying Arrays
- Passing Arrays to Methods
- Arrays of Objects
- The Arrays Class
- Command Line Arguments
- Multidimensional Arrays
Module 4 -Encapsulation, Inheritance and Polymorphism
- Constructors
- The this Reference
- Data Hiding
- public and private Members
- Access Levels
- Composition
- Static Data Members
Module 5 -Abstract Classes, Interfaces and Packages
- Abstract Classes
- Abstract Class Example
- Extending an Abstract Class
- Creating and using Interfaces and Packages
Module 6 -Exceptions, I/P, O/P, and Collections
- Exception Handling
- The Exception Hierarchy
- Checked Exceptions
- Advertising Exceptions with throws
- Developing Your Own Exception Classes
- The finally Block and The File Class
- Standard Streams and Keyboard Input
- File I/O Using Byte Streams
- Character Streams
- File I/O Using Character Streams
- Buffered Streams
- File I/O Using a Buffered Stream
- Keyboard Input Using a Buffered Stream
- Writing Text Files
- Collections
- JAVA Conclusion
- Lab Sessions | Practice Exercises | Quiz
Module 7 – Introduction to Test Automation
- What is Automation Testing?
- Difference between Manual and Automation
- When do we start Automation
- What are the Automation tools in the Market
- Why Open Source Test Automation
Module 8 -Overview of Selenium
- What is Selenium
- Advantage of using Selenium
- When can Selenium be useful
- Difference between Selenium and other Testing Tools
- Introduction to Test NG
- Understanding Grid
- Selenium Components & Limitations
- Downloading & Installing Selenium IDE
- Installing Firepath
- Installing Firebug
Module 9 -Overview of Selenium
- Creating Selenium IDE script
- Executing Selenium Script
- Creating Test Suite
- Executing Test Suite
- Setting up the execution mode
- Export Test Cases
- Schedule Test Execution
- Creating Assert
- Inserting Verification Points
- Adding Selenium IDE comments
- Synchronization commands
- Creating Variables
- Storing elements
- Creating Regular Expressions
- How to enhance a script using Selenium IDE
- Saving Test Script and Test Suite
- Managing base URL
- Exploring Test Log
- Working with Selenese Commands
- What you cannot record
Module 10 – Locators & Object Identification
- Tools to identify elements or objects
- Using Firebug and Firepath
- Google Chrome Developer tools
- Locating elements by ID
- Finding elements by name
- Finding elements by link text
- Finding elements by Xpath
- Finding elements by Dynamic Xpath
- Finding Elements by using CSS
- Some Special IDE commands
- Write your own Selenium IDE script without record and playback
Module 11 – Selenium Debug
- Creating Toggle Breakpoints
- Setting or Clearing Starting Points
- Executing Step by Step
- Debug The IDE Script
Module 12 – Selenium RC
- Understanding Selenium RC
- Converting Selenium IDE into RC Script
- Understanding Eclipse
- Customizing RC Script in Eclipse
- Adding Selenium JAR Files to Eclipse
- Starting and Stopping Selenium Server
- Running Selenium RC Script
- Limitation of Selenium RC
Module 13 – Selenium Webdriver
- What is Selenium WebDriver
- What is the difference between Selenium RC and WD?
- Advantages of using Selenium WebDriver
- Creating and Executing WebDriver Script
- Sample programs in WebDriver
- Identifying Elements in WebDriver
- Parameterizing the Test in WebDriver
- Cross Browser Testing Using Selenium WebDriver
- Introduction to POI
- Selenium Conclusion
- Lab Sessions
- Practice Exercises | Quiz