Automation Testing

Automation Testing

Testing is a critical phase of Software Development Life Cycle. Test automation goals and objectives are centered around facilitating the test process and boosting its efficiency. The larger the project is, the more relevant it is to use automated testing. Usually, the most strategically important areas are subject to automation. Remember that automated testing is not a substitute for manual testing – it is rather a powerful backup.

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 webpage. 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 a selenium grid and we can integrate with project management tools for managing the projects.

Selenium Suite of Tools/Selenium Components
i) Selenium IDE
ii) Selenium RC
iii) Selenium WebDriver
iv) Selenium Grid

Selenium IDE is a Record and Playback tool, no programming support and it is a prototype tool, not suitable for complex Test Design, so eliminate Selenium IDE, next Selenium RC is outdated, next Selenium Grid, It is only for Test Execution/Parallel Testing and doesn’t support Test Design, so now we have only one tool for creating and executing Test cases, that is Selenium WebDriver.

Testing Framework Selection depends on the Programming platform, we select Java as a programming platform, then the supported Framework is either JUnit or TestNG, select TestNG Framework for selenium as Test Runner.

Course Details

 

Our vision is to let every student go across standard learning and unlock new intelligence power. The testing is important since it discovers defects/bugs before the delivery to the client, which guarantees the quality of the software. It makes the software more reliable and easy to use. Thoroughly tested software ensures reliable and high-performance software operation.

Course Information

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 Webdriver 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.

  1. Class

 

  1. Variables

 

  1. Static and non-static variables

 

  1. Static and non-static functions

 

  1. Object

 

  1. 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’s 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

  1. Collections

 

  1. File Handling

 

 

Module 7: Introduction to Selenium IDE

 

In this module, we will discuss about features of Ide and limitations of IDE.

  1. Installation and Introduction to IDE

 

  1. Creating first script using record and playback

 

  1. Installation of Inspector Tools and its Uses.

 

  1. Generating Scripts using different WebElements

 

  1. Handling Wait Commands

 

  1. Handling Validations Commands
  • 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 AutoSuggestion

 

  • 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.

  1. Configure Eclipse with Selenium and TestNG

 

  1. New- Installation of TestNG

 

  1. Create First TestNG Program and Execute.

 

  1. Check reports generated by TestNG

 

  1. How to execute only failed test cases in Selenium Webdriver

 

  1. What is TestNG Listeners and How to implement TestNG Listener in Selenium Webdriver

 

  1. How to run group Test cases in Selenium using TestNG

 

  1. How to run Multiple Programs using TestNG.

 

  1. Execute Selenium Webdriver Test cases parallel using TestNG

 

XSLT report generation generation using   TestNg and Ant

  • Building a BAT file to run tests using ANT

 

  • Putting Dataproviders for multiple tests in a single file

 

  • Parameterizing/Sharing single dataprovider 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: DataDriven Framework

 

 

this module, we will discuss about datadriven 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.

 

  • Softassertions 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

 

 

Module 11: Hybrid Framework

 

In this module, we will discuss about Hybrid framework with sample project and deciding keywords and call them from excel sheet based on the run modes 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

 

 

 

  • Creating a Core Framework

 

  • Deciding keywords

 

  • Generic and application dependent Keywords

 

  • Using reflection API to call keyword functions

 

  • Create Maven Project and Packages

 

  • Creating test Cases

 

  • Build base test

 

  • Build Validations Functions

 

  • Build generic Functions.

 

  • Softassertions 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

 

  • Resultset 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: 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.

Project Details:

Real-time Project involving most of the above concepts with the 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

Future Opportunity

As web applications are considered to be the next big thing for many companies worldwide, test automation market trends are steadily rising up with extensive demand with Selenium. Many top organizations across the world rely on Selenium resources for their test automation needs. If you are ready to dive deep into test automation and gain advanced-level expertise in it, then Selenium will help you to land in a better and rewarding position in your career.

However, no software has ever been produced without bugs; this clearly illustrates that the need for automation testing is ever. Hence the future looks bright for Selenium with endless opportunities.

Tutor Information

  • J2SE, JEEE
  • Manual Testing
  • Automation Testing
  • Quality Analyst
  • ISTQB Certified

Industry Driven projects

 

1. Public Healthcare Management System: Public Healthcare Management software is used mostly in hospitals, diagnoses, and pharmacies to automate the overall work structure and to eliminate human intervention.

2. Test Cases for Ambuja Cement

3. Test Cases for Blue Cross Blue Shield

4. Soil Moisturizing- https://soilhealth.dac.gov.in/HealthCard/HealthCard/state

5. E-commerce practice website-It’s a full-featured e-commerce website simulator and my favorite. Here you can test anything from a simple login page to product selection and add/edit your shopping cart. It covers the complete online shopping workflow. You can write Selenium scripts to fill addresses, shipping details, and proceed to simulate payment.

6. NewTours aut- It asks you to log in first before presenting the online flight booking web page.

7. org tested using selenium web driver. Its a Job Portal for Employers and Candidates

8. ParaBank Banking Software – This is a banking website that allows for automation through the UI and through the Web Services (REST and SOAP). This is hugely beneficial because it will allow you to think of your automation in terms of the automation pyramid.

9. Sauce E-Commerce- This is probably the site that I have seen for UI test automation. This website is an e-commerce store that has several cool attributes.