AUTOMATION TEST ENGINEER / QUALITY ANALYST
Courses>> AUTOMATION TEST ENGINEER / QUALITY ANALYST
Features of Our Courses
Why AUTOMATION TEST ENGINEER / QUALITY ANALYST
Selenium with Java is a free automation testing tool for web applications. It is able to work with different browsers like Chrome, Firefox, IE, Opera and simulate human like behavior.
Why is it a necessary skill?
For someone with willingness to work in technology, automation engineering is a potential career. Automation is a rapidly growing aspect of both the technology and manufacturing sectors. More and more tasks are expected to be automated as technology develops. As a result, there will probably be a greater demand for automation specialists. Automated engineers typically earn more money than other IT professionals, indicating that the position is in great demand.
Overview
Selenium with Java is a free automation testing tool for web applications. It is able to work with different browsers like Chrome, Firefox, IE, Opera and simulate human like behavior. Selenium is able to interact with all the different elements in a web page. It can click on them, input text, extract text and much more. By covering all the different functionalities on your website with Selenium tests, you will be able to quickly catch new and reappearing old bugs. This will save your time and money, we can run our test cases on various environments using selenium grid and we can integrate with project management tools for managing the projects.
Course Objectives:
- Understand Selenium IDE
- Understand web elements
- Understand JUnit/TestNG framework
- Taking screen shots using selenium
- Understand Extent Reports
- Handling multiple windows, pop-ups, alerts
- Develop Various frameworks
- Freelancers that want to make bug free websites.
Pre-requisite / Target Audience:
Basic knowledge on programming language Java
Module 1: Introduction to Automation Testing
In this module, we can learn about automation testing and when to automate the application. We can also look into different automation tools in the market, and we will discuss about advantages and disadvantages of automation tool.
❖ What is Automation testing
❖ Advantages of Automation testing
❖ Disadvantages of Automation testing
Module 2: Introduction to Selenium
In this module, we will discuss briefly about selenium tool and history of it. We will compare selenium with other tool like QTP and we can look into major components in selenium like Selenium IDE, Selenium RC, Selenium Web driver and Selenium Grid.
❖ History of Selenium
❖ Why Selenium tool
❖ Differences between Selenium and other Tools
❖ Different components in Selenium
Module 3: Introduction to JAVA
In this module, we will talk about java and features of java, and what is JVM and JRM. We will discuss about different types of data types and conversion of data types, and control statements (loops like for, while, do while, if) with examples. What is string and different methods in strings. We will discuss about one dimensional array and two dimensional array along with real time examples and more details about functions and parameterization and how to return the functions and use it with on other functions.
❖ Introduction to java
❖ Installation of Eclipse IDE
❖ Data types
❖ Control Statements
❖ Strings
❖ Arrays
❖ What are Functions?
❖ Function Input Parameters
❖ Function Return Types
Module 4: Object Oriented Programming -1
In this module, we discuss about class and local variables, global variables. how to create static and non static methods and how to access them. How to create Object and call the functions. What is constructor and when to use constructor, what is parameterized constructor and how to pass parameters in constructor.
❖ Class
❖ Variables
❖ Static and non-static variables
❖ Static and non-static functions
❖ Object
❖ Constructor
Module 5: Object Oriented Programming -2
In this module, we will discuss about concept of Inheritance and how we can overload and override functions. What is package and how to access classes across packages. What are the different access modifiers available in java (Public, Private, Protected) and how to use them. How to handle exception and what is try and catch block, differences between throw and throws, final and finally, and different kinds of exceptions.
❖ Inheritance
❖ Overloading and Overriding Functions
❖ Packages
❖ Access Modifiers
❖ Exception Handling
Module 6: Object Oriented Programming – 3
In this module, we will discuss about different types of collections like Arraylist, set, hashtable and how to use them. How to read and write text file and how to read properties files, and how to read and write excel sheet using apache poi
❖ Collections
❖ File Handling
Module 7: Introduction to Selenium IDE
In this module, we will discuss about features of Ide and limitations of IDE.
❖ Installation and Introduction to IDE
❖ Creating first script using record and playback
❖ Installation of Inspector Tools and its Uses.
❖ Generating Scripts using different WebElements
❖ Handling Wait Commands
❖ Handling Validations Commands
❖ Handling Store Commands
❖ Limitations of IDE
Module 8: Introduction to Selenium WebDriver 3
In this module, we will talk about webdriver and its features, and we will write a sample program for better understanding. In this module, we talk about basic features of webdriver like get and navigation functions, different types of Waits, taking screenshot and etc.
❖ First Program on selenium
❖ Verify Page title in Selenium Webdriver
❖ Navigation in selenium
❖ Radio button and Checkbox in Selenium Webdriver
❖ Handling Auto Suggestion
❖ Handling DropdownList
❖ Handling File upload using Sikuli/Auto IT
❖ Handling Drag and Drop in Selenium
❖ Handling Mouse Hover,Keyword Events using Action class
❖ Synchronization using webdriver(Waits)
❖ How to take screenshot using selenium
❖ How to Take Multiple Screenshots
❖ How to capture Error message using webdriver
❖ Handling Multiple windows
❖ Handling Alert Messages.
❖ Handling IFrames.
❖ Cross Browsing using selenium
❖ Complete details of Dynamic XPath in Selenium
❖ Complete details on CSS in selenium
❖ How to download files in Selenium Webdriver.
❖ Handling WebTable
❖ Handling WebCalendar
❖ How to use Logs File in selenium
❖ How to use Properties File in selenium
Module 9: What is Framework
In this module, we will discuss about very important topic i.e., frameworks.
❖ What is Framework
❖ Types of Framework
❖ Use of Framework
Module 10: TestNG Framework
In this module, we will discuss about TestNG, what is the advantages of testng over Junit. We will look at different annotations and how to use them in selenium, and integrating different types of reports(XSLT, Extent Reports) to testng and parallel execution of test cases and creating maven project and adding dependencies to pom.xml file and how to run maven project.
❖ Configure Eclipse with Selenium and TestNG
❖ New- Installation of TestNG
❖ Create First TestNG Program and Execute.
❖ Check reports generated by TestNG
❖ How to execute only failed test cases in Selenium Webdriver
❖ What is TestNG Listeners and How to implement TestNG Listener in Selenium Webdriver
❖ How to run group Test cases in Selenium using TestNG
❖ How to run Multiple Programs using TestNG.
❖ Execute Selenium Webdriver Test cases parallel using TestNG
❖ XSLT report generation generation using TestNg and Ant or Maven
❖ Building a BAT file to run tests using ANT or Maven
❖ Putting Dataproviders for multiple tests in a single file
❖ Parameterizing/Sharing single data provider for multiple test cases
❖ TestNg Maven Configuration
❖ Maven-surefire-report-plugin with testng
❖ Executing testng from maven on Command Prompt
❖ Generating Maven Surefire Reports
❖ Generating XSLT Reports with Maven
❖ Managing Multiple test Suites
Module 10: Data-driven Framework
In this module, we will discuss about data-driven framework with sample project and how to run deploy src to github and how to run project through Jenkins and sending reports via emails, and how to run parallel using grid.
❖ What is data driven Framework
❖ Write Excel using Apache poi/JXL
❖ Read Excel using Apache poi/JXL
❖ Goals to be achieve in data driven framework
❖ Creating a Core Framework
❖ Create Maven Project and Packages
❖ Creating test Cases
❖ Build base test
❖ Build Validations Functions
❖ Build generic Functions.
❖ Soft assertions and extent reports
❖ Logging into reports
❖ Put Screenshots to reports
❖ Initiate properties files
❖ Build a centralized/reusable function to extract objects
❖ Reading Data from XLS-Parameterizing tests
❖ Build the utility function for reading data
❖ Selectively/Optionally Run tests
❖ Reports – XSLT, Extent Reports
❖ Run project with ANT/Maven/Eclipse
Model 12: Database Testing
In this module, we will discuss about mysql or sql sever and necessary commands. We will also see that how to integrate it to selenium project using server jar files
❖ Install MySQL Server
❖ Discussion on JDBC Drivers and Other drivers
❖ Connection interface
❖ Statement and prepared statement interface
❖ Result set interface
❖ Discussion on various commands like select, delete ,update, insert queries
❖ Using TestNG annotations to establish database connection
❖ Sample Connection on application and Validations on it.
Module 13: Jenkins + Git + GitHub
In this module, we will briefly talk about git, github and how to push code to github and installation of Jenlkins and how to execute test scripts through Jenkins, builds fails send email to respective user
❖ What is Continuous Integration
❖ What is Jenkins and how it helps in CI
❖ Downloading and installing Jenkins
❖ Executing simple batch commands
❖ Scheduling time for test execution.
❖ Executing Selenium Project builds with ANT
❖ Build Triggers
❖ Mailing if build fails
❖ Configuring/Scheduling Maven Project in Jenkins
❖ Downloading and installing GIT
❖ Installing GIT and GITHUB plugins for jenkins
❖ Configuring ssh host keys for GIT and Jenkins
❖ Git Bash commands and operations
❖ Uploading project to GIT using GIT Bash
❖ Cloning projects
❖ Creating branch/forks
❖ Configuring/Scheduling remote Git maven project in Jenkins
Module 14: Selenium Grid
In this module, we will discuss about hub and node concept, how to run parallel execution on different nodes. How to create json file for parallel execution.
❖ Introduction to Grid
❖ reading Nodes and Hubs
❖ Deciding number of browsers on a Node
❖ Deciding type of browsers on Node
❖ Limiting number of concurrent browsers on node
❖ Difference between maxSession and maxInstance
❖ Configuring chrome driver and IE driver exe files on grid
❖ Testng configurations
❖ RemoteWebDriver and Desired Capabilities
❖ Configuring JSON file format to initialize/configure hub and nodes
❖ Running single test on single node – serially in multiple browsers
❖ Running single test on single node – parallel on multiple browsers
❖ Running single test on multiple nodes – each node having different browser
❖ Can we decide node to run test?
❖ Running multiple tests spread across 3 nodes – one for ie, one for firefox and one for chrome
❖ Node Timeout
❖ Prioritizing the test cases
❖ Prioritizer Interface and CustomPrioritizer
❖ Sharing same webdriver instance among multiple tests after prioritizing them
❖ Grid Coding in eclipse
❖ Creating a Grid sample test case
❖ End to end scenario building and execution on Grid -demonstration on one node
❖ End to end scenario building and execution on Grid -demonstration on multiple nodes on virtual machine
❖ End to end scenario building and execution on Grid -demonstration on multiple nodes on virtual machine and on multiple browsers.
Module 15: Page Object Model
In this model, we will see how to create page object framework and page factory with sample examples.
❖ What is Page Object Model
❖ When to use POM
❖ Examples to POM
❖ POM using Page Factory
❖ Sample Examples for POM.
Real-time Project involving most of the above concepts with following will be provided
❖ Product Abstract Document
❖ Requirement Specification Document
Step-by-Step procedure for building the project from ground up
❖ Complete Source Code
❖ Database Connections and comparing data in Database.
❖ Instructions to Setup the Project on a Testing box
❖ Instruction to Deploy using project management tools
At the end of the course participants will be able to
1. Understand about automation testing
2. When and why to use automation testing
3. Understand about java programming language
4. About selenium components and how to use them on web applications
5. Understand about Project management tools
❖ Resume Preparation.
❖ Mock interviews and assignments.
❖ Daily tasks will be assigned to students