570 likes | 657 Views
In this presentation, you will be learning about Selenium, its advent, Selenium suite of tools and lastly its job roles and salaries. Selenium is an automated testing tool that tests web applications across various platforms and browsers. Selenium is a powerful automation tool and comprises of a suite of components viz. Selenium IDE, RC, WebDriver and Grid. <br><br>The video has brushed upon the topics in brief and explains the following concepts <br>u2981 Manual testing and its challenges<br>u2981 Advent of Selenium<br>u2981 What is Selenium?<br>u2981 Selenium suite of tools<br>u2981 Selenium jobs and salary<br><br>What are the objectives of this Selenium training course?<br>This course will enable you to:<br>1. Revise the core Java concepts which are essential for learning Selenium WebDriver<br>2. Understand the scope of Test Automation in DevOps and fundamentals of Test Automation<br>3. Create Test Cases using Selenium IDE u2013 Record and Playback tool<br>4. Understand Selenium WebDriver architecture and various layers of interaction<br>5. Set up WebDriver project in Eclipse and write test cases using TestNG<br>6. Locate elements using various locating techniques<br>7. Work with various WebDriver commands to drive web browser and various WebElement commands to deal with various web components<br>8. Learn to deal with various possible scenarios in terms of pop ups, multiple Windows, frames, taking screenshots<br>9. Implement Page Object Design Pattern and Data Driven Testing<br>10. Understand how to use Maven, ANT, AutoIT, Sikuli, log4j, and listeners<br>11. Learn to use Selenium Grid with TestNG for parallel execution<br>12. Execute a project from scratch by building automation framework and automating a few test scenarios<br><br>Who should take this Selenium training course?<br>The course is ideal for :<br>1. Test Managers<br>2. Test Engineers<br>3. Test Lead<br>4. Test Analyst<br>5. QA Engineers<br>6. Software Developers<br>7. Engineers who want to learn Automation testing<br><br>Learn more at https://www.simplilearn.com/selenium-certification-training
E N D
Today’s agenda What is manual testing? Challenges of manual testing Advent of Selenium What is Selenium? Selenium suite of toolsAdvantages and Limitations of Selenium testing Selenium Jobs and Salary How can Simplilearn help you?
What is Manual testing? Execution of test cases without using automation tools One of the primitive methods of testing a software Does not require the knowledge of a testing tool Can practically test any application
Challenges of manual testing Requires presence of tester at all times Extremely time consuming High risk of error No support for performance and batch testing Manual creation of logs and repositories Limited scope
Advent of Selenium Jason Huggins, an engineer at ThoughtWorks, Chicago found the repetitious work of manual testing strenuous and monotonous
Advent of Selenium He developed a JavaScript program to automate the testing of a web application
Advent of Selenium He developed a JavaScript program to automate the testing of a web application The program was called JavaScriptTestRunner
Advent of Selenium He developed a JavaScript program to automate the testing of a web application The program was called JavaScriptTestRunner Initially, the new invention was deployed by the inmates at Thoughtworks. However, in 2004 it was renamed as Selenium and was made open source
What is Selenium? Selenium is an automated testing tool used to test web applications across various browsers
What is Selenium? Selenium is an automated testing tool used to test web applications across various browsers Open source
What is Selenium? Selenium is an automated testing tool used to test web applications across various browsers Open source • Consists of a set of software tools that facilitate testing
What is Selenium? Selenium is an automated testing tool used to test web applications across various browsers Open source • Consists of a set of software tools that facilitate testing • Primarily developed in JavaScript
What is Selenium? Selenium is an automated testing tool used to test web applications across various browsers Open source Provides a record/playback tool for authoring tests without learning a test scripting language • Consists of a set of software tools that facilitate testing • Primarily developed in JavaScript
What is Selenium? Selenium is an automated testing tool used to test web applications across various browsers Provides a record/playback tool for authoring tests without learning a test scripting language Open source • Consists of a set of software tools that facilitate testing • Can be coded in many programming languages • Primarily developed in JavaScript
What is Selenium? Selenium is an automated testing tool used to test web applications across various browsers Provides a record/playback tool for authoring tests without learning a test scripting language Open source • Consists of a set of software tools that facilitate testing • Can be coded in many programming languages • Primarily developed in JavaScript • Browser and platform independent
Selenium suite of tools Selenium IDE Selenium Remote Control (RC) Selenium suite Selenium WebDriver Selenium Grid
Selenium suite of tools Selenium Integrated development environment (IDE) • Developed by Shinya Kasatani • Firefox or Chrome extension that can automate the browser functionality • Records user interactions on the browser and exports them as a reusable script • Selenese commands can be used to modify the test script generated after recording • Selenium IDE deploys on Windows, Linux, and MacOS platforms Selenium suite
Selenium suite of tools Selenium Integrated development environment (IDE) • Selenium IDE ceased to exist in August 2017 • A robust version of IDE was released in 2018 by Applitools • The new IDE deploys a Selenium Side Runner that allows all IDE tests to run on any browser, in parallel, and on a grid without needing to write any code. • Selenium IDE is integrated with other suite components to provide a robust interface for application testing Selenium suite
Selenium suite of tools Menu bar
Selenium suite of tools Tool bar
Selenium suite of tools Start/Stop recording button
Selenium suite of tools Address bar
Selenium suite of tools Test script editor box
Selenium suite of tools Test case pane
Selenium suite of tools Test log and reference
Selenium suite of tools Selenium Remote Control (RC) • Paul Hammantdeveloped Selenium RC • Selenium RC is a server written in Java • RC makes provision for writing application tests in various programming languages like Java, C#, Perl, PHP, Python etc. • The RC server accepts commands from the user program and passes them to the browser as Selenium-Core JavaScript commands • The browser behaves accordingly Selenium suite
Selenium suite of tools Selenium Remote Control (RC) Selenium suite RC Server test.js Web browser injected with Selenium core Consider a JavaScript program test.js used by google.com
Selenium suite of tools Selenium Remote Control (RC) Selenium suite RC Server test.js Web browser injected with Selenium core • However, it cannot access elements of other domains like yahoo.com
Selenium suite of tools Selenium Remote Control (RC) Selenium suite RC Server test.js Web browser injected with Selenium core • This is called Same Origin Policy and Selenium RC was introduced to address this limitation. The server acts as a client configured HTTP proxy and "tricks" the browser into believing that Selenium Core and the web application being tested come from the same origin
Selenium suite of tools Selenium WebDriver • Simon Stewart developed WebDriver in 2006 • The first cross-platform testing framework • Programming interface to create and run test cases • Makes provision to act on web elements • Does not require a core engine like RC and interacts natively with the browser applications • Supports Java, C#, PHP, Python, Perl, Ruby, etc. • Supports frameworks like TestNG, JUnit, NUnit Selenium suite
Selenium suite of tools Selenium WebDriver Selenium suite Selenium WebDriver does not require an additional RC. It directly interacts with browser and controls its working
Selenium suite of tools Selenium Grid • Developed by Patrick Lightbody • The main objective of Grid is to minimize test execution time • Grid was designed to distribute commands to different machines simultaneously • Selenium Grid allows the parallel execution of tests on different browsers and different operating systems • Grid is exceptionally flexible and is integrated with other suite components for simultaneous execution Selenium suite
Selenium suite of tools Selenium Grid Selenium suite The Grid consists of a hub connected to several nodes. It receives the test to be executed along with information about the operating system and browser to be run on
Selenium suite of tools Selenium Grid Selenium suite The hub picks a node that conforms to the requirements (browser and platform) and passes the test to that node
Advantages of Selenium testing Supports various browsers and operating systems Speed and Accuracy Ease of implementation Open source Supports wide spectrum of programming languages Reusability and Add-ons
Limitations of Selenium testing Limited support for image testing Tests web applications only No reliable tech support No built in reporting facility Limited test management May require knowledge of programming languages
Selenium jobs and salaries • Job role • To develop test cases to detect bugs and errors • Automation framework design and implementation according to project structure • To improve and automate test practices • To participate in communicating best practices • Define test strategies and test manuals for tracking and fixing software issues
Selenium jobs and salaries • Job role • To develop test cases to detect bugs and errors • Automation framework design and implementation according to project structure • To improve and automate test practices • To participate in communicating best practices • Define test strategies and test manuals for tracking and fixing software issues $90.4k 524k $157k $21k 277k 1m The average salary of an Automation engineer in the USA is $90,390 per annum Source- indeed.com The average salary of an Automation engineer in India is ₹5,24,000 per annum Source- payscale.com
Which of the following suite components does not support programming?
Which of the following suite components does not support programming? Selenium WebDriver
Which of the following suite components does not support programming? Selenium WebDriver Seleninum Grid
Which of the following suite components does not support programming? Selenium WebDriver Seleninum Grid Selenium Integrated Development Environment (IDE)