Software testing is a process to evaluate the functionality of a software application with an intent to find whether the developed software met the specified requirement (client) or not, and to identify the defects to ensure that the product is defect free so as to get the quality of the product.
Selenium is a portable framework for testing web applications. It is an open-source, automated testing tool used to test web applications across various browsers. Selenium provides a playback tool for authoring functional tests without the need to learn a test scripting language (Selenium IDE).
Selenium works with many programming languages like Java, C#, Ruby, Python and Java Script. Selenium is used to automate the Web Application in all modern browsers. Selenium is composed of several components(Selenium IDE , Selenium Grid , Selenium WebDriver, Selenium RC) with each taking on a specific role in aiding the development of web application test automation.
Prerequisite for Full Stack Java Selenium:
1. There is no pre-requisite for learning java-selenium.
2. No prior working experience is mandatory but it can be an added advantage.
The objective of this course in SDLC, is to help the participants to understand the testing approach followed in IT industry these days. In this course the students can understand the testing types and techniques followed in companies for testing an application with real time Scenario’s.
This course in SDLC aims to provide a real time experience to the participants who are new to the IT industry and also to those who aims to start their career in Testing.
Considering the today’s world, In order to avoid inefficient and time taking manual testing, it ‘s recommended to automate the Web Application so that manual effort is reduced while performing regression testing. Added to it selenium has a lot of advantages as: Selenium is an Open Source Software, supports various programming languages to write programs, supports various operating systems, supports various Browsers (Mozilla Firefox, Google Chrome, Opera, Safari etc…), supports Parallel Test Execution, uses less Hardware resources.
1. Industry Experienced Trainer with real time experience
2. Training based on Real Life Scenarios
3. Course based on Certification Structure
4. Free System Access
5. Recorded Class Videos
Selenium has become the default standard for Web Testing, as evidenced by a 300% increase in job posting over 4 years. At the same time, Web Testing continue to become a increasing demand in the Industry.
Advanced world is moving towards automation testing with the advent of new mechanization tools floating away from manual testing. Selenium is one of the most attractive automation tool for ventures and youth to develop their career in testing.
1. Understand basics and advance usability of selenium.
2. Explore the integration capability of SuccessFactors across the modules.
3. Attain the ability to configure the system for Recruiting, Onboarding and Employee Central as per client requirement.
4. Gain complete end to end knowledge to implement SuccessFactors modules
Chapter 1: Fundamentals of Testing
Why is testing necessary?
What is testing?
Economics of Testing
o Black Box Testing
o White Box Testing
Software Testing Principles
Fundamental Test Process
Chapter 2: Testing throughout the software life cycle
Software Development models
o V – Model
o Iterative Life Cycles
Test Levels
o Component Testing
o Integration Testing
o System Testing
o Acceptance Testing
o Maintenance testing
Chapter 3: Static Techniques
Reviews and the test process
Review Process
Inspections and Walkthroughs
Code Inspection
Chapter 4: Test Design Techniques
Identifying test conditions and designing test cases
Categories of test design techniques
Specification-based or black-box techniques
o Boundary Value Analysis
o Decision Table Testing
o Equivalence Partitioning
o State Transition Testing
o Use Case Testing
Structure-based or white-box techniques
o Code Coverage
o Decision Coverage
o Statement Coverage
o Structural Testing
Experience-based techniques
o Error Guessing
o Exploratory Testing
Choosing a test technique
Chapter 5: Test Management
Test Organization
Test Plans, Estimates, and strategies
Test progress monitoring and control
Configuration Management
Risk and Testing
Incident Management
Chapter 6: Other Testing Types
Function Testing
Volume Testing
Stress Testing
Usability Testing
Security Testing
Performance Testing
Configuration Testing
Reliability Testing
Recovery Testing
Chapter 7: Introducing Quality Center
The Quality Center Testing Process
Starting Quality Center
The Quality Center Window
Chapter 8: Specifying Releases and Cycles
Defining Releases and Cycles
Viewing Releases and Cycles
Chapter 9: Specifying Requirements
Defining Requirements
Viewing Requirements
Modifying Requirements
Converting Requirements
Chapter 10: Planning Tests
Developing a Test Plan Tree
Designing Test Steps
Copying Test Steps
Calling Tests with Parameters
Creating and Viewing Requirements Coverage
Chapter 11: Running Tests
Defining Test Sets
Adding Tests to a Test Set
Scheduling Test Runs
Running Tests Manually
Viewing and Analyzing Test Results
Chapter 12: Adding and Tracking Defects
How to Track Defects
Adding New Defects
Matching Defects
Updating Defects
Linking Defects to Tests
Creating Favorite Views
Introduction
Introduction to DBMS
Introduction to Data Management
File system concepts
Database Models
Hierarchal Model
Network Model
Relational Model
Introduction to Oracle
History of Oracle
Oracle products and features
Oracle versions and releases
About SQL & SQL*PLUS
SQL*NET
Introduction to SQL
Sub-language Commands
Data Retrieval Language (DRL)
Data Definition Language (DDL)
Data Manipulation Language (DML)
Transaction Control Language (TCL)
Database security and Privileges
Working with DRL
Select statement
Distinct Selection
‘Where’ Clause
‘Order by’ Clauses
Working with DDL and DML
DDL commands
Database objects and object types
Working with Tables
Data Types
Table partitions Create, Alter,
Add, Modify, Drop Insert, Update,
Delete
Commit, Rollback
Oracle Built-in Functions
Arithmetic Functions Character
Functions Date Functions Queries
with Single Row Functions
Misc Functions
Working with Regular Expressions
Constraints
Data Integrity Concepts
Different types of Constraints
Table Level and Column Level
Composite Constraints
Check Constraint and
Restrictions Referential Integrity
Sub Queries
Normal Sub Queries.
Co-related Sub Queries.
Updating Using Co-Related.
Deleting Co-Related
Using Exists and Not Exists
Inline Queries
Miscellaneous Sub-queries.
Joins
Joining Tables
Simple Joins
Outer Joins
Self Joins
Joins with Inline Queries
ANSI Join Syntax
Select Statement with Misc Options
Set Operators
Pseudo Columns
Views, Synonyms & Indexes
Simple & Complex Views
Modifying the View Query
Synonyms
Indexes
Sequences
What is java
Advantages of java
Keywords
Identifiers
Syntax
Java compiler and execution engine
Literals
Primitive Data types
Variables
Local variable
Methods
Method overloading
Conditional Statements
Looping statements
Nested loops
Pattern printing programs
Basic logic building programs
Oops concepts
What is object
What is class
Static members
Non static members
Reference variable
Constructors
Constructor overloading
Inheritance and its types
Super()
this()
Super keyword and this keyword
Abstraction
abstract classes
Interfaces
Pass by value
Encapsulation
Java.lang
Object class
String class and its inbuilt methods
Arrays
for each loop
Exception handling
Custom exceptions
Static blocks
Programs on arrays
Collection (List, queue, Set)
Map
Interview questions Nested classes
What is selenium?
History of selenium
Selenium suite
Selenium webdriver architecture
Actions on the browser window like refresh(), get title , get url …and many more basic actions.
Html tags and its attributes
Locators
1.Id
2. Name
3. Link text
4.PartialLinktext
5. Classname
6. Tagname
7. Css selector
8. Xpath
9.DOM Locator
Xpath axes methods
Practise sessions and example on locators
Actions class
Various action on the web elements
Drag and drop
Right click , double click and many more….
Writing basis test cases using selenium
Uploading and downloading a file using selenium
Alerts: how to handle alerts?
Simple alert
Confirmation alert
Prompt alerts
Frames (optional)
Handling multiple windows using selenium
TestNG
What is testNG?
Annotations in testNG
Functionality of Annotation in testNG
Testng.xml file
Group execution
Batch execution
Parallel execution of classes , methods and tests
How to take screenshot in runtime
Listener implementation class
How to read data from Properties file
Apache poi
How to read and write data to the excel sheet
Framework architecture
Maven deployment tool and its lifecycle
Plugins available in maven
Maven commands
Maven dependencies for testNG
pom.xml file
Github and git repository
Jenkins continuous integration tool
What is Cucumber?
How to download and install cucumber ?
Naturals Plugin in Eclipse
Cucumber project creation template
Understanding cucumber dependencies
Feature File Importance in cucumber
Gherkin Language
Gherkin Syntax (Given , When, Then , And , But ) and How it works
Step Defintion File Importamce in cucumber
Mapping step defintion to feature file
TidyGherkins Plugin to create step definations
TestRunner Class
@RunWith
@CucumberOptions
How to run your test cases/test scenario’s using TestRunner class
How to reuse functions with different data
Importance of data table for dataDriving tests
Parameterizing test runs with Example keyword
Tagging feature to control testcases
Importance of Background keyword in cucumber scenarios
Usage of hooks
Usage of Background and Hooks for robust test
Generating reports of cucumber scenarios
Importance of attributes in cucumber options
MAVEN
Importance of maven in framework development
Installing and configuring maven
Understanding terminologies of maven
Creating maven project and importing project into eclipse
Understanding Pom.xml file and its dependencies
Importance of surefire plugin in executing test
JENKINS
Importance of jenkins in Test framework
Install and configure jenkins
Creating jenkins setting and workspace
Running the Cucumber project from maven
Scheduling the project from jenkins job
Get selenium dependencies into framework
How to build Cucumber Framework ?
Automate selenium test case with step definition implementation
How to pass cucumber options from command line?
GIT
Introduction to GIT
Importance of Git and its uses
Creating Git config and repositories
How to push code to remote repository
Understanding Staging and commit in Git
Add remote repository and push the committed code
Importance of branching in Git
Merging the working branch into Master
Lecture 1:-Introduction to API Testing
Lecture 2:-Real time usage of API’s in Industry with example
Lecture 3:-Understanding GET,POST,PUT,DELETE https crud operation of API’s
Lecture 4:- Path parameters , query parameters and headers in rest API’s
Lecture 5:-What are resources and API contract?
Lecture 6:-Introduction to POSTMAN and GOOGLE MAPS API.
Lecture 7:- Google maps get place API’s.(GET)
Lecture 8:- Google maps add place API’s.(POST)
Lecture 9:- Google maps delete place API’s.(DELETE)
Lecture 10:- Google maps update place API’s.(PUT)
Lecture 11:- Introduction on Rest API’s.
Lecture 12:- Rest assured Automation setups
Lecture 13:- Setting up test project with rest assured API’s.
Lecture 14:- Build Rest API’s automation tests to add place and validate status code.
Lecture 15:-Assertions on Json Response and headers through automated code.
Lecture 16:- Parsing the Json response body using Json Path class.
Lecture 17:- Integrating multiple API’s with common Json Response values.
Lecture 18:- Building end to end automation using GET, POST , PUT and DELETE HTTP Methods.
Lecture 19:- Importance of TestNG Assertions in validating the response.
Lecture 20:- Understanding structure of complex Nested Json and it’s Array notations.
Lecture 21:-Retrieving the Json Array size and its elements using Json path.
Lecture 22:- Iterating over Json Array.
Lecture 23:-Real time examples to solve business logic through Json response.
Lecture 24:-Why dynamic payloads are important to understand.
Lecture 25:-Introduction to New API.
Lecture 26:- Rest Assured tests for the new API.
Lecture 27:- Sending parameters to payload from Test.
Lecture 28:- Parameterize your tests with multiple data sets(Parametrization).
Lecture 29:-Examples on Parametrization of API Tests with multiple data sets.
Lecture30:-How to handle with static Json Payload.
Lecture 31:-Code download
Lecture 32:-Cookie Authentication API for tests.
Lecture 33:- Introduction to one more new API’s.
Lecture 34:- Tests on the above API.
Lecture 35:-Defining Path Parameters in Rest assured code using API.
Lecture 36:-Importance of session filter cookie in rest assured code.
Lecture 37:-Sending attachment to Rest API using multipart methods in rest assured.
Lecture 38:-Integrating Query parameters and Path parameters in single test to restrict results.
Lecture 39:-Parsing Complex Json for end to end test scenario.
Lecture 40:-Importance of Assertions and http validations on Rest API
Lecture 41:- Introduction to OAuth 2.0 and different grant types.
Lecture 42:- Understanding grant type authorization flow with real time examples.
Lecture 43:-Flow procedure in achieving OAuth 2.0 authentication mechanism.
Lecture 44: Details on practise OAuth 2.0 project.
Lecture 45:-Building up rest assured automation tests for the OAuth project.
Lecture 46:- Integration of Web UI Automation to generate authorization code.
Lecture 47:- Formatting URL String to retrieve code using Java methods.
Lecture 48:-Code Download from Git.
Lecture 49:- How to deal with client credentials grant type for OAuth flow.
Lecture 50:-What is serialization and de serialization in Rest Assured.
Lecture 51:-Libraries needed to support serialization in rest assured.
Lecture 52:-What are POJO Classes.
Lecture 53:- Strategies in Parsing complex nested JSON using POJO Classes.
Lecture 54:- Creating POJO Classes for the real time nested Array.
Lecture 56:- End to End Automation examples using POJO De Serialization.
Lecture 57:-Solving complex Queries from Json with simple POJO Classes-Part 1.
Lecture 58:- Solving complex Queries from Json with simple POJO Classes-Part 2.
Lecture 59:-How to showcase API testing experience to recruiters.
Lecture 60:-Google maps add place Json to implement Serialization.
Lecture 61:-Building POJO Classes for constructing Json Payload to API.
Lecture 62:- Complete end to end test cases with serialization Implementation.
Lecture 63:- Significance of Spec Builders in Rest assured.
Lecture 64:-Build Response Spec Builder.
Lecture 65:-Rewriting tests with Response and Request spec Builder.
Lecture 66:- Practical example in implementing spec builder and Optimized code.
Lecture 67:-Maven
Lecture 68:- Understanding terminologies of maven.
Lecture 69:-Creating maven project and importing into eclipse.
Lecture 70:-Why maven?
Lecture 71:-Introduction to Cucumber.
Lecture 72:-What is Gherkin syntax and how it works?
Lecture 73:-Understanding the cucumber scenario’s usage.
Lecture 74:-Feature file and step definition file importance in cucumber.
Lecture 75:-Cucumber Project creation template.
Lecture 76:-Understanding Cucumber dependencies.
Lecture 77:-Understanding the terminologies of Automation.
Lecture 78:-TidyGherkin plugin to generate Step Definitions.
Lecture 79:-Mapping step definition to the feature file.
Lecture 80:-Running the tests with test runner.
Lecture 81:-Importance of regular expressions in feature file.
Lecture 82:- How to reuse functions with different data.
Lecture 83:-Check Point before starting the framework lectures.
Lecture 84:- Creating maven project with rest assured dependencies.
Lecture 85:-Building feature file for rest assured API’s tests.
Lecture 86:- Building test runner and step definitions file for add place API’s feature test.
Lecture 87:-Implementing real code in step definition files using re useable components.
Lecture 88:-Running the tests in cucumber standards with necessary configuration changes.
Lecture 89:-Building utility files and Implement logging feature in framework.
Lecture 90:-Implement mechanism to drive global property values from the property file.
Lecture 91:-Data driver Testing mechanism for API tests using cucumber example feature.
Lecture 92:-Parameterize API tests with multiple data sets.
Lecture 93:-What are enums? How framework can utilize the enum concept.
Lecture 94:- Removing hardcoded resources details with enum class methods.
Lecture 95:-Building end to end Automation in framework standards.
Lecture 96:-Reusing step definition in the framework.
Lecture 98:-Importance of cucumber hooks.
Lecture 99:-Optimizing the framework tests with all necessary validations.
Lecture 100:-Running the complete framework using maven commands.
Lecture 101:- Generate excellent cucumber HTML Reposting with additional plugins.
Lecture 102:- Aapche POI jar files.
Lecture 103:- Strategy to access the excel data.
Lecture 104:-Practise Excel driven testing-1.
Lecture 105:- Practise Excel driver testing-2.
Lecture 106:- Conversion of Hash map into JSON.
Lecture 107:-Excel Integration with rest assured tests.
Lecture 108:-Introduction to Git.
Lecture 109:- Why Git? Git commands.
Lecture 110:- Cloning repository.
Lecture 111:- Merge conflicts in Git.
Lecture 112:- Project download and interview questions.