Basic-Selenium
Course Content:
PART-A:
Duration- 2 Weeks
-->INtroduction to Automation
-->What?
-->When?
-->Why?
-->Automation Tool Types?
-->Advantages and Disadvantages of Automation
***Introduction to Selenium'
***Comnponents Of Selenium
***Introduction to Selenium WebDriver Version 3
***Introduction to Selenium WebDriver Version 4
***Java Selenium Architecture
###Practicals:
-Maven Project
-Importance of Maven Project
***Launching Empty Browsers
-->WebDriver Methods
-->Locators
-->types of Locators
-->WebElement Methods
------------------------------------------------------------------
PART-B:
Duration: 2 Weeks
***Advance Scenarios:
-->Handling Autosuggestion
-->handling Keyboard Strokes
-->Handling Mouse Hover Action
-->Handling Dropdown/Listbox
-->Handling Scrollbar
-->Handling SYnchronization Issues
-->Handling SVG Elements
-->Handling Multiple WebElements
***Popup:
-->Alert Popup
-->Hidden Division Popup
-->Frame Popup
-->Calendar Popup
-->FileUpload Popup
-->Browser Native Popup
-->Window Popup
-->Authenthication Popup
----------------------------------------------------------------------
PART-C:
Duration: 2 Weeks
-->Introduction To FrameWork
**DDT(Data Driven Testing)
-->What is DDT?
**Types
1: Properties Files
-->fetching Data using Properties file
-->Inserting Data using Properties File
2: Excel File:
-->fetching Data using Excel File
-->Inserting Data using Excel File
-->Advantages and Disadvantages of DDT
***POM(Page Object Model)
-->What is POM?
-->Rules of POM
-->POM Implementation
-->Advantages and Disadvantages Of POM
***TestNG
-->What is TestNG?
-->Why TestNG?
-->Types of Annotation
-->Types of Execution
-->Batch Execution
-->Parallel Execution
**Assertions
-->Advantages of TestNG
**Listeners
-->TakeScreenshot
***Introduction to Maven
***Introduction to GitHub
***Introduction to Jenkins
**Types of Framework
===Optional===
*Handling Captcha
*Handling Desktop Application(Using Sikuli/AutoIt)
------------------------------------------------------
**Testing: Its a process of identifying bugs
-->Testing can be done in two ways:
1: Manual Testing
2: Automation Testing
**Manual Testing: Checking each and every functionlaity of an application manually without using
any tool.
***Disadvantages of Manual Testing:
1: Time Consuming process
2: It requires more man power
3: It is less accurate
4: It is tediuos and monotonous job
**Automation Testing: Testing the functionality of an application by writting test script using
Automation Tool.
OR
-->Converting Manual test cases into automation test scripts with the help of tools.
**Automation Tool: It is a software which is used to test another software.
**Automation Tools Name are: Selenium,QTP, cypress, Test Complete, Appium,Sahi pro etc.
**Advantages of Automation testing:
1: faster
2: MOre accurate
3: Less time consuming
4: Requires less ManPower
5: Better quality Software
6: Cross Browser Testing
**Disadvantages of Automation Testing:
1: 100% of Automation is not possible
2: Skilled Manpower Required
3: If Manual test cases steps are improper than that testcases are not Automated.
-------------------------------------------------------------------------------------
Ques: Why we should do Automation Testing?
1: To avoid human mistakes
2: To reduce human efforts
3: To reduce project cost
4: To reduce project duration
5: To sustain in market competion.
6: Automation testing is efficient and accurate
7: For repeatitive task which take place in Regression Testing
---------------------------------------------------------------------
Ques: When we should start with Automation Testing?
-->In Release 1, it will starts whern feature are stable(After few build)
-->In Release 2, from B01 onwards(On Release 1 feature)
---------------------------------------------------------------------------
Ques: What type of testing perform in Automation?
-->Regression Testing
-------------------------------------------------------
Ques: Is 100% of Automation is Possible?
-->NO
----------------------------------------------------------
Ques: On which type of feature will you do Automation testing?
-->Old and Stable feature(Bug free)
----------------------------------------------------------------
***SELENIUM***
-->It has introduced by "JASON HUGGINS" in 2004.
-->It is a most powerful tool used to test web based application only. OR
It ia a automation tool use to perform functionality testing on UI Or presentation layer of web
application.
-->It is a collection of in-built libraries.
**Advantages of Selenium:
1: Its an Open Source
2: It supports Multiple Languages(java,python,php,JS,c# etc)
3: It supports Multiple Browser(Chrome, Edge,Firefox etc)
4: It supports majorly used OS(windows,MAC, Linux)
5: It supports Cross Browser testing.
6: It can easily integrate with other tools(testNG,cucumber)
**Disadvantages of Selenium:
1: We cannot automate captcha, OTP, image,barcode etc
2: We cannot handle desktop application
3: 100% automation is not possible
4: It can automate only web based application.
5: Skilled Labour
6: No customer support
-----------------------------------------------------------------
***Essential Software for Selenium:
1: Selenium webdriver
2: Browser like: Chrome, Firefox
3: IDE: Eclipse
4: Browser Driver executable file (selenium webdriver version 4 we are not using)
----------------------------------------------------------------------------------
Ques: What is the latest version of selenium webdriver?
-->Selenium 4.36.0(We can use 4.26.0/4.27.0)
-------------------------------------------------------------
Ques: What [Link] file contains?
-->It contains method which are essential to perform action
-->Methods contains logic to perform action.
-----------------------------------------------------------------
***Flavours of Selenium/COmponents of Selenium/Varients of Selenium:
1: Selenium RC(Remote Control)
2: Selenium IDE(Integrated Development Env.)
3: Selenium Grid
4: Selenium WebDriver
**Selenium RC
1: Here we write Automation Scripts using programming languages(java,Python, C# etc), to
automate Web Applications.
2: We need to install a seperate server called as Selenium Remote Control Server.
3: Here Server acts like a mediator between selenium scripts and the browser
4: RC server injects javascript program into the browser thern only it will automate your
automation scripts.
Disadvantages:
1: Need to install server seperately
2: Selenium RC Consumes more time
3: Performance is slow as RC injects Javascript Code into the server.
Note: Selenium RC is no longer in use and it is not supported.
-->It has been deprecated in favour of selenium webdriver, which is more efficient and stable
compared to RC.
--------------------------------------------------------------------------------
2: Selenium IDE:
-->It is a Record and Playback tool.
--> Selenium IDE allows you to record interactions with a webpage and then automatically
generate test scripts based on those interactions.
-->This makes it accessible for users who are not familiar with programming as it can generate
test scripts in various languages(Examp: Java, Python, Javascript etc)
-->It supports Chrome Browser,Firefox Browser, and Edge as well.
Disadvantages:
1: Cannot automate complex scenarios
2: Cannot perform Data-Driven Testing
--------------------------------------------------------------------
3: Selenium Grid:
-->It is used to run test scripts on multiple machines from a central point.
-->Selenium gris is a powerful tool for parallel test execution, enabling you to
test your application across multiple browsers, operating system and configuration
Simultaneously.
-->It is a designed to speed up the testing process by distributiong the execution of tests
across different environmnets.
--------------------------------------------------------------------
4: Selenium WebDriver:
-->It is a script based Automation Tool which is used to automate Web Application.
-->It is the important component of Selenium Tool's Community.
-->It is simple and robust
-->Here Test Script can be developed in any of the programming language and can be executed
directly in different browsers.
------------------------------------------------------------------------------