{"id":4468,"date":"2022-01-05T17:21:53","date_gmt":"2022-01-05T17:21:53","guid":{"rendered":"https:\/\/www.softwaretestinghelp.com\/?p=4468"},"modified":"2025-05-27T02:58:20","modified_gmt":"2025-05-27T02:58:20","slug":"selenium-tutorial-1","status":"publish","type":"post","link":"https:\/\/www.softwaretestinghelp.com\/selenium-tutorial-1\/","title":{"rendered":"Best Selenium Tutorial for Beginners"},"content":{"rendered":"\n<p><strong>A Complete List of the Best Selenium Tutorials to Learn and Master Selenium From Scratch:&nbsp;<\/strong><\/p>\n\n\n\n<p>After several frequent requests from STH readers, today we are finally launching our FREE Selenium Tutorial series. In this Selenium training series, we will cover all Selenium testing concepts and its packages with easy-to-understand practical examples.<\/p>\n\n\n\n<p>These <a title=\"Selenium Tutorials\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-tutorial-1\/\">Selenium tutorials<\/a> are helpful for beginners to advanced-level Selenium users. Starting from the very basic Selenium concepts tutorial, we will gradually move on to<a title=\"Selenium Tutorials\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-tutorial-1\/\"> <\/a>advanced topics like Framework creation, Selenium Grid, and Cucumber BDD. <em><\/em><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"700\" height=\"350\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-Tutorials.png\" alt=\"Selenium Tutorials\" class=\"wp-image-301130\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-Tutorials.png 700w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-Tutorials-300x150.png 300w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/figure>\n\n\n\n<p><span style=\"color: #000000;\"><strong>A Complete List of The Selenium Tutorials in This Series:<\/strong><\/span><\/p>\n\n\n\n<p><strong>Selenium Basics:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Tutorial #1:<\/strong> <a title=\"Selenium Introduction\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-tutorial-1\/\">Selenium Testing Introduction<\/a> <strong>(Must Read)<\/strong><\/li>\n\n\n\n<li><strong>Tutorial #2:<\/strong> <a title=\"Selenium IDE features Download and Installation\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-ide-download-and-installation-selenium-tutorial-2\/\">Selenium IDE Features, Selenium Download, and installation<\/a><\/li>\n\n\n\n<li><strong>Tutorial #3:<\/strong> <a title=\"Selenium Script\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-ide-script-selenium-tutorial-3\/\">My first Selenium IDE script<\/a> <strong>(Must Read)<\/strong><\/li>\n\n\n\n<li><strong>Tutorial #4: <\/strong><a title=\"Selenium Firebug\" href=\"https:\/\/www.softwaretestinghelp.com\/firebug-for-selenium-scripts-selenium-tutorial-4\/\">Creating a script using Firebug and its installation<\/a><\/li>\n\n\n\n<li><strong>Tutorial #5:<\/strong> <a title=\"Selenium Xpaths\" href=\"https:\/\/www.softwaretestinghelp.com\/using-selenium-xpath-and-other-locators-selenium-tutorial-5\/\">Locator Types: ID, ClassName, Name, Link Text, Xpath<\/a><\/li>\n\n\n\n<li><strong>Tutorial #6:<\/strong> <a title=\"Selenium CSS Selectors\" href=\"https:\/\/www.softwaretestinghelp.com\/css-selector-selenium-locator-selenium-tutorial-6\/\">Locator Types: CSS Selector<\/a><\/li>\n\n\n\n<li><strong>Tutorial #7<\/strong>: <a title=\"Selenium tutorial 7\" href=\"https:\/\/www.softwaretestinghelp.com\/locate-elements-in-chrome-ie-selenium-tutorial-7\/\">Locating elements in Google Chrome and IE<\/a><\/li>\n<\/ul>\n\n\n\n<p><strong>Selenium WebDriver:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Tutorial #8:<\/strong> <a title=\"Selenium tutorial 8\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-webdriver-selenium-tutorial-8\/\">Selenium WebDriver Introduction<\/a> <strong>(Must Read)<\/strong><\/li>\n\n\n\n<li><strong>Tutorial #9:<\/strong> <a title=\"Selenium tutorial 9\" href=\"https:\/\/www.softwaretestinghelp.com\/webdriver-eclipse-installation-selenium-tutorial-9\/\">Selenium WebDriver Installation with eclipse<\/a><\/li>\n\n\n\n<li><strong>Tutorial #10:<\/strong> <a title=\"Selenium tutorial 10\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-webdriver-tutorial-10\/\">My first Selenium WebDriver script<\/a> <strong>(Must Read)<\/strong><\/li>\n\n\n\n<li><strong>Tutorial #11:<\/strong> <a title=\"Selenium tutorial 11\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-junit-framework-selenium-tutorial-11\/\">Introduction to JUnit<\/a><\/li>\n\n\n\n<li><strong>Tutorial #12:<\/strong>&nbsp;<a title=\"Selenium tutorial 12\" href=\"https:\/\/www.softwaretestinghelp.com\/testng-framework-selenium-tutorial-12\/\">Introduction to TestNG<\/a> <strong>(Must Read)<\/strong><\/li>\n\n\n\n<li><strong>Tutorial #13:<\/strong> <a title=\"Selenium tutorial 13\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-select-class-selenium-tutorial-13\/\">Handling Drop-downs<\/a><\/li>\n\n\n\n<li><strong>Tutorial #14:<\/strong> <a title=\"Selenium tutorial 14\" href=\"https:\/\/www.softwaretestinghelp.com\/webdriver-commands-selenium-tutorial-14\/\">Looping and Conditional commands<\/a><\/li>\n\n\n\n<li><strong>Tutorial #15:<\/strong> <a title=\"Selenium tutorial 15\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-webdriver-waits-selenium-tutorial-15\/\">Explicit and Implicit Waits<\/a><\/li>\n\n\n\n<li><strong>Tutorial #16:<\/strong> <a title=\"Selenium tutorial 16\" href=\"https:\/\/www.softwaretestinghelp.com\/handle-alerts-popups-selenium-webdriver-selenium-tutorial-16\/\">Handling Alerts\/popups<\/a><\/li>\n\n\n\n<li><strong>Tutorial #17:<\/strong> <a title=\"Selenium tutorial 18\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-webdriver-commands-selenium-tutorial-17\/\">Commonly used commands<\/a><\/li>\n\n\n\n<li><strong>Tutorial #18:<\/strong> <a title=\"Selenium tutorial 18\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-tutorial-18\/\">Handling Web Tables, Frames, Dynamic Elements<\/a><\/li>\n\n\n\n<li><strong>Tutorial #19:<\/strong> <a title=\"Selenium tutorial 19\" href=\"https:\/\/www.softwaretestinghelp.com\/exception-handling-framework-selenium-tutorial-19\/\">Exception Handling<\/a><\/li>\n<\/ul>\n\n\n\n<p><strong>Selenium Framework:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Tutorial #20:<\/strong> <a title=\"Test automation framework\" href=\"https:\/\/www.softwaretestinghelp.com\/test-automation-frameworks-selenium-tutorial-20\/\">Most popular Test Automation frameworks<\/a> <strong>(Must Read)<\/strong><\/li>\n\n\n\n<li><strong>Tutorial #21:<\/strong> <a title=\"Selenium framework creation\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-framework-design-selenium-tutorial-21\/\">Selenium Framework Creation &amp; Accessing Test Data from Excel<\/a> <strong>(Must Read)<\/strong><\/li>\n\n\n\n<li><strong>Tutorial #22:<\/strong> <a title=\"Creating Generics and testsuites\" href=\"https:\/\/www.softwaretestinghelp.com\/creating-generics-and-testsuites-selenium-tutorial-22\/\">Creating Generics and Testsuite<\/a><\/li>\n\n\n\n<li><strong>Tutorial #23:<\/strong> <a title=\"Apache ANT\" href=\"https:\/\/www.softwaretestinghelp.com\/apache-ant-selenium-tutorial-23\/\">Using Apache ANT<\/a><\/li>\n\n\n\n<li><strong>Tutorial #24:<\/strong> <a title=\"Maven build test automation\" href=\"https:\/\/www.softwaretestinghelp.com\/maven-project-setup-for-selenium-selenium-tutorial-24\/\">Setting up Selenium Maven Project<\/a><\/li>\n\n\n\n<li><strong>Tutorial #25:<\/strong> <a title=\"Hudson\" href=\"https:\/\/www.softwaretestinghelp.com\/hudson-continuous-integration-tool-selenium-tutorial-25\/\">Using Hudson Continuous integration tool<\/a><\/li>\n<\/ul>\n\n\n\n<p><strong>Advanced Selenium:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Tutorial #26:<\/strong> <a title=\"Logs in Selenium scripts\" href=\"https:\/\/www.softwaretestinghelp.com\/log4j-tutorial-selenium-tutorial-26\/\">Logging in Selenium<\/a><\/li>\n\n\n\n<li><strong>Tutorial #27:<\/strong> <a title=\"Selenium scripting tips\" href=\"https:\/\/www.softwaretestinghelp.com\/efficient-selenium-scripting-selenium-tutorial-27\/\">Selenium Scripting Tips and Tricks<\/a><\/li>\n\n\n\n<li><strong>Tutorial #28:<\/strong> <a title=\"Database Testing using selenium Webdriver\" href=\"https:\/\/www.softwaretestinghelp.com\/database-testing-using-selenium-webdriver-selenium-tutorial-28\/\">Database Testing using Selenium Webdriver<\/a><\/li>\n\n\n\n<li><strong>Tutorial #29:<\/strong> <a title=\"Selenium Grid Introduction\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-grid-selenium-tutorial-29\/\">Selenium Grid Introduction<\/a> <em><strong>(Must Read)<\/strong><\/em><\/li>\n\n\n\n<li><strong>Tutorial #30:<\/strong> <a title=\"Automation testing using Cucumber and Selenium\" href=\"https:\/\/www.softwaretestinghelp.com\/cucumber-bdd-tool-selenium-tutorial-30\/\">Automation Testing Using Cucumber and Selenium Part -1<\/a><\/li>\n\n\n\n<li><strong>Tutorial #31:<\/strong> <a title=\"Automation testing using Cucumber and Selenium\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-webdriver-cucumber-selenium-tutorial-31\/\">Integration of Selenium WebDriver with Cucumber Part -2<\/a><\/li>\n\n\n\n<li><strong>Tutorial #32:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/assertions-in-selenium\/\">Assertions In Selenium Using Junit And TestNG Frameworks<\/a><\/li>\n\n\n\n<li><strong>Tutorial #33:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/assertion-examples-practical-applications\/\">Selenium Assertion Examples &#8211; Practical Applications In Projects<\/a><\/li>\n\n\n\n<li><strong>Tutorial #34:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/page-object-model-in-selenium-without-page-factory\/\">Page Object Model In Selenium Without Using Page Factory<\/a><\/li>\n\n\n\n<li><strong>Tutorial #35:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/page-object-model-pom-with-pagefactory\/\">Page Object Model In Selenium Using Page Factory<\/a><\/li>\n\n\n\n<li><strong>Tutorial #36:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/keyword-driven-framework-in-selenium\/\">Keyword Driven Framework In Selenium With Examples<\/a><\/li>\n\n\n\n<li><strong>Tutorial #37:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/hybrid-framework-in-selenium\/\">What Is Hybrid Framework In Selenium?<\/a><\/li>\n\n\n\n<li><strong>Tutorial #38:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/handle-windows-pop-up-in-selenium-using-autoit\/\">How To Handle Windows Pop Up In Selenium Using AutoIT<\/a><\/li>\n\n\n\n<li><strong>Tutorial #39:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/debugging-techniques-in-selenium\/\">Debugging Techniques In Selenium<\/a><\/li>\n\n\n\n<li><strong>Tutorial #40:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/handling-iframes-using-selenium\/\">Handling IFrames Using Selenium WebDriver SwitchTo() Method<\/a><\/li>\n\n\n\n<li><strong>Tutorial #41:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/xpath-functions\/\">XPath Functions for Dynamic Xpath in Selenium<\/a><\/li>\n\n\n\n<li><strong>Tutorial #42:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/xpath-axes-tutorial\/\">Xpath Axes for Dynamic Xpath in Selenium<\/a><\/li>\n\n\n\n<li><strong>Tutorial #43:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/webdriver-listeners-in-selenium\/\">WebDriver Listeners in Selenium<\/a><\/li>\n\n\n\n<li><strong>Tutorial #44: <\/strong><a href=\"https:\/\/www.softwaretestinghelp.com\/select-check-box-in-selenium\/\">How To Select The Check Box In Selenium With Examples<\/a><\/li>\n\n\n\n<li><strong>Tutorial #45:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/handle-scroll-bar-in-selenium\/\">How To Handle Scroll Bar In Selenium Webdriver<\/a><\/li>\n\n\n\n<li><strong>Tutorial #46:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/take-screenshot-in-selenium\/\">How To Take Screenshot In Selenium<\/a><\/li>\n\n\n\n<li><strong>Tutorial #47:<\/strong> <a href=\"https:\/\/www.softwaretestinghelp.com\/radio-buttons-in-selenium\/\">How To Select Radio Buttons In Selenium WebDriver?<\/a><\/li>\n\n\n\n<li><strong>Tutorial #48: <\/strong><a href=\"https:\/\/www.softwaretestinghelp.com\/handle-mouse-clicks-in-selenium\/\">Selenium Actions: Handle Double &amp; Right Click In Selenium<\/a><\/li>\n\n\n\n<li><strong>Tutorial #49: <\/strong><a href=\"https:\/\/www.softwaretestinghelp.com\/file-upload-in-selenium\/\">How To Upload File Using Selenium Webdriver \u2013 3 Methods<\/a><\/li>\n<\/ul>\n\n\n\n<p><strong>Selenium Tips and Interview Preparation:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Tutorial #50:<\/strong> <a title=\"Selenium project test estimation\" href=\"https:\/\/www.softwaretestinghelp.com\/test-estimation-of-selenium-automation-project-selenium-tutorial-32\/\">Selenium project test effort estimation<\/a><\/li>\n\n\n\n<li><strong>Tutorial #51:<\/strong> <a title=\"Selenium Interview Questions\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-interview-questions-answers\/\">Selenium Interview Questions and Answers<\/a><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><span style=\"color: #ff6600;\"><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-contrast-color\">How to start Learning Selenium?<\/mark><\/strong><\/span><\/p>\n\n\n\n<p>This is the best time to start learning Selenium testing on your own with the help of this free Selenium Training series. Read tutorials, and practice examples at your home, and put your queries in the comment section of the respective tutorials. We will address these queries.<\/p>\n\n\n\n<p><strong>This is our genuine effort to help you learn and master one of the most popular software testing tools! <\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Selenium Introduction<\/h2>\n\n\n\n<p>We are delighted to launch yet another series of software testing training tutorials. The belief behind introducing this tutorial is to make you an expert in one of the widely used software test automation solutions, <a href=\"http:\/\/www.seleniumhq.org\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Selenium<\/a>.<\/p>\n\n\n\n<p>In this series, we will look at the various facets of Selenium. Selenium is not just a tool, it is a cluster of independent tools. We will look into some of the Selenium tools, with practical examples wherever applicable.<\/p>\n\n\n\n<p>Before you jump into reading this exciting and useful series, let us look at what it has in store for you.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Why Selenium<\/h3>\n\n\n\n<p>The current industry trends have shown that there is a mass movement towards automation testing. Hence a cluster of repetitive manual testing scenarios has raised a demand to bring in the practice of automating these manual scenarios.<\/p>\n\n\n\n<p><strong>There are several Benefits of implementing an Automation Test; let&#8217;s look at them:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Supports execution of repeated Test Cases<\/li>\n\n\n\n<li>Aids in testing a large Test Matrix<\/li>\n\n\n\n<li>Enables parallel execution<\/li>\n\n\n\n<li>Encourages unattended execution<\/li>\n\n\n\n<li>Improves accuracy thereby reducing human-generated errors<\/li>\n\n\n\n<li>Saves time and money<\/li>\n<\/ul>\n\n\n\n<p><strong>All of these benefits result in the following:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>High ROI<\/li>\n\n\n\n<li>Faster GoTo market<\/li>\n<\/ul>\n\n\n\n<p>Several automation testing benefits are well understood and largely talked about in the software testing industry.<\/p>\n\n\n\n<p>One of the most commonly asked questions that come with this are \u2013<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>What is the best tool for me to get my tests automated?<\/li>\n\n\n\n<li>Is there a cost involved in it?<\/li>\n\n\n\n<li>Is it easy to adapt?<\/li>\n<\/ul>\n\n\n\n<p>One of the best answers to all the above questions for automating web-based applications is Selenium. Because:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It\u2019s an open-source<\/li>\n\n\n\n<li>It has a large user base and helps communities<\/li>\n\n\n\n<li>It has multi-browser and platform compatibility<\/li>\n\n\n\n<li>It has active repository developments<\/li>\n\n\n\n<li>It supports multiple language implementations<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">First Glance at Selenium<\/h3>\n\n\n\n<p>Selenium is one of the most popular Automated Testing suites. Selenium is designed in such a way to support and encourage Automation Testing of functional aspects of web-based applications and a wide range of browsers and platforms. Because of its existence in the open-source community, it has become one of the most accepted tools amongst testing professionals.<\/p>\n\n\n\n<p><strong>Selenium supports a broad range of browsers, technologies, and platforms.<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-1-new.jpg\"><img decoding=\"async\" width=\"600\" height=\"313\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-1-new.jpg\" alt=\"Automated Testing suites\" class=\"wp-image-4492\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-1-new.jpg 600w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-1-new-300x156.jpg 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Selenium Components<\/h3>\n\n\n\n<p>Selenium is not just a single tool or a utility, it is rather a package of several <a href=\"https:\/\/www.softwaretestinghelp.com\/tools\/\">testing tools<\/a>, hence it is referred to as a Suite. Each of these tools caters to different testing and <a title=\"https:\/\/www.softwaretestinghelp.com\/test-bed-test-environment-management-best-practices\/\" href=\"https:\/\/www.softwaretestinghelp.com\/test-bed-test-environment-management-best-practices\/\">test environment requirements<\/a>.<\/p>\n\n\n\n<p><strong>The suite package constitutes of the following set of tools:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Selenium Integrated Development Environment (IDE) <a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-2.jpg\"><img decoding=\"async\" width=\"46\" height=\"24\" class=\"alignnone size-full wp-image-4471\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-2.jpg\" alt=\"Selenium intro 2\"><\/a><\/li>\n\n\n\n<li>Selenium Remote Control (RC) <a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-3.jpg\"><img decoding=\"async\" width=\"47\" height=\"25\" class=\"alignnone size-full wp-image-4472\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-3.jpg\" alt=\"Selenium intro 3\"><\/a><\/li>\n\n\n\n<li>Selenium WebDriver<\/li>\n\n\n\n<li>Selenium Grid <a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-4.jpg\"><img decoding=\"async\" width=\"44\" height=\"26\" class=\"alignnone size-full wp-image-4473\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-4.jpg\" alt=\"Selenium intro 4\"><\/a><\/li>\n<\/ul>\n\n\n\n<p>Selenium RC and WebDriver, combined, are popularly known as <strong>Selenium 2<\/strong>. <strong>Selenium RC<\/strong> alone is also referred to as <strong>Selenium 1<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-5.jpg\"><img decoding=\"async\" width=\"485\" height=\"271\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-5.jpg\" alt=\"Selenium package\" class=\"wp-image-4474\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-5.jpg 485w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-5-300x167.jpg 300w\" sizes=\"(max-width: 485px) 100vw, 485px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Brief Introduction to Selenium Versions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #ff6600;\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-contrast-color\">Selenium Core<\/mark><\/span><\/h3>\n\n\n\n<p>Selenium results from the continuous efforts of<strong> <\/strong>an engineer named Jason Huggins from ThoughtWorks. Being responsible for the testing of an internal Time and Expenses application, he realized the need for an automation testing tool to get rid of repetitive manual tasks without compromising quality and accuracy.<\/p>\n\n\n\n<p>As a result, he built a JavaScript program, named \u201c<strong>JavaScriptTestRunner<\/strong>\u201d in early 2004, that could automatically control the browser\u2019s actions, which seemed very much similar to that of a user communicating with the browser.<\/p>\n\n\n\n<p>Henceforth, Jason started demoing the tool to a vast audience. Eventually, the discussions were laid out to categorize this tool in an open-source category and its potential to grow as a reusable testing framework for other web-based applications.<\/p>\n\n\n\n<p>The tool was later acclaimed with the name \u201c<em><strong>Selenium Core<\/strong><\/em>\u201d.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #ff6600;\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-contrast-color\">Selenium IDE (Selenium Integrated Development Environment)<\/mark><\/span><\/h3>\n\n\n\n<p><strong>Selenium IDE<\/strong> was developed by Shinya Kasatani. While studying Selenium Core, he realized this JavaScript code can be extended to create an integrated development environment (IDE), which can be plugged into Mozilla Firefox. <\/p>\n\n\n\n<p>This IDE was capable of recording and playing back the user&#8217;s actions on a Firefox instance to which it was plugged in. Later on, Selenium IDE became a part of the Selenium Package in the year 2006. Later, this tool turned out the great value and potential for the community.<\/p>\n\n\n\n<p>Selenium IDE is the simplest and easiest of all the tools within the Selenium Package. Its record and playback features make it exceptionally easy to learn with minimal acquaintance with any programming language. With several advantages, a few disadvantages accompanied Selenium IDE, thus making it inappropriate to be used with more advanced test scripts.<\/p>\n\n\n\n<p><strong>Advantages and Disadvantages of Selenium IDE:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-6.jpg\"><img decoding=\"async\" width=\"485\" height=\"441\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-6.jpg\" alt=\"Advantages and Disadvantages of Selenium IDE\" class=\"wp-image-4475\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-6.jpg 485w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-6-300x272.jpg 300w\" sizes=\"(max-width: 485px) 100vw, 485px\" \/><\/a><\/figure>\n\n\n\n<p>The disadvantages of IDE are not disadvantages of Selenium, in reality. Rather, they are just limitations to what IDE could achieve. These limitations can be overcome by using<strong> Selenium RC or WebDriver<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #ff6600;\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-contrast-color\">Selenium RC (Selenium Remote Control)<\/mark><\/span><\/h3>\n\n\n\n<p><strong>Selenium RC<\/strong> is a tool written in Java to allow a user to construct test scripts for a web-based application in any programming language he\/she chooses. Selenium RC came as a result of overcoming the various disadvantages incurred by <strong>Selenium IDE or Core<\/strong>.<\/p>\n\n\n\n<p>Loopholes and restrictions that were imposed while using Selenium Core made it difficult for the user to leverage the benefits of the tool to its totality. Thus, it made the testing process a cumbersome and far-reaching task.<\/p>\n\n\n\n<p>One of the crucial restrictions was the <strong>Same Origin Policy.<\/strong><\/p>\n\n\n\n<p><strong>Problem With Same Origin Policy:<\/strong><\/p>\n\n\n\n<p>The problem with the Same Origin Policy is, that it disallows to access the DOM of a document from an origin that differs from the origin we are trying to access the document.<\/p>\n\n\n\n<p>Origin is a sequential combination of scheme, host, and port of the URL. For example, for the URL http:\/\/www.seleniumhq.org\/projects\/, the origin is a combination of HTTP, seleniumhq.org, 80 correspondingly.<\/p>\n\n\n\n<p>Thus Selenium Core (JavaScript Program) cannot access the elements from an origin that is different from where it was launched.<\/p>\n\n\n\n<p>For Example, if I have launched the JavaScript Program from \u201chttp:\/\/www.seleniumhq.org\/\u201d, then I would have been able to access the pages within the same domain such as \u201chttp:\/\/www.seleniumhq.org\/projects\/\u201d or \u201chttp:\/\/www.seleniumhq.org\/download\/\u201d. The other domains like google.com, and yahoo.com would no longer be accessible.<\/p>\n\n\n\n<p>Thus, to test any application using Selenium Core, one has to install the entire application on the Selenium Core and a web server to overcome the problem of the same-origin policy.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-7.jpg\"><img decoding=\"async\" width=\"485\" height=\"250\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-7.jpg\" alt=\"Selenium Core\" class=\"wp-image-4476\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-7.jpg 485w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-7-300x154.jpg 300w\" sizes=\"(max-width: 485px) 100vw, 485px\" \/><\/a><\/figure>\n\n\n\n<p>So, in governing the same-origin policy without the need to make a separate copy of the Application under test on the Selenium Core, <strong>Selenium Remote Control<\/strong> was introduced. <\/p>\n\n\n\n<p>While Jason Huggins was demoing Selenium, another fellow colleague at ThoughtWorks named Paul Hammant suggested a workaround of the same-origin policy and a tool that can be wired up with a programming language of our choice. Thus Selenium RC came into existence.<\/p>\n\n\n\n<p>Unlike Selenium IDE, Selenium RC supports a wide range of browsers and platforms.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-8.jpg\"><img decoding=\"async\" width=\"485\" height=\"330\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-8.jpg\" alt=\"Selenium Remote Control \" class=\"wp-image-4477\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-8.jpg 485w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-8-300x204.jpg 300w\" sizes=\"(max-width: 485px) 100vw, 485px\" \/><\/a><\/figure>\n\n\n\n<p><strong>Workflow Description<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The user creates a test script in the desired programming language.<\/li>\n\n\n\n<li>For every programming language, there is a designated client library.<\/li>\n\n\n\n<li>Client library deports the test commands to the Selenium server.<\/li>\n\n\n\n<li>Selenium server deciphers and converts the test commands into JavaScript commands and sends them to the browser.<\/li>\n\n\n\n<li>The browser executes the commands using Selenium Core and sends the results back to the Selenium server<\/li>\n\n\n\n<li>Selenium server delivers the test results to the client library.<\/li>\n<\/ul>\n\n\n\n<p><strong>There are a few pre-requisites to be in place before creating Selenium RC scripts:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A Programming Language \u2013 Java, C#, Python, etc.<\/li>\n\n\n\n<li>An Integrated Development Environment \u2013Eclipse, Netbeans, etc.<\/li>\n\n\n\n<li>A Testing Framework (optional) \u2013 JUnit, TestNG, etc.<\/li>\n\n\n\n<li>And Selenium RC setup off course<\/li>\n<\/ul>\n\n\n\n<p><strong>Advantages and Disadvantages of Selenium RC:<\/strong><\/p>\n\n\n\n<p>Please refer to the following figure to more about the advantages and disadvantages of Selenium RC.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-9.jpg\"><img decoding=\"async\" width=\"586\" height=\"460\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-9.jpg\" alt=\"advantages and disadvantages of Selenium RC\" class=\"wp-image-4484\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-9.jpg 586w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-9-300x235.jpg 300w\" sizes=\"(max-width: 586px) 100vw, 586px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #ff6600;\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-contrast-color\">Selenium Grid<\/mark><\/span><\/h3>\n\n\n\n<p>With selenium RC, the life of a tester has always been favorable until the emerging trends raised a demand to execute the same or different test scripts on multiple platforms and browsers concurrently to achieve distributed test execution, testing under different environments and saving execution time remarkably. Thus, catering to these requirements <strong>Selenium Grid<\/strong> was brought into the picture.<\/p>\n\n\n\n<p>Pat Lightbody introduced a selenium Grid to address the need for executing the test suites on multiple platforms simultaneously.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #ff6600;\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-contrast-color\">Selenium WebDriver<\/mark><\/span><\/h3>\n\n\n\n<p>Selenium WebDriver was created by yet another engineer at ThoughtWorks named Simon Stewart in the year 2006. WebDriver is also a web-based testing tool with a subtle difference from Selenium RC. Since the tool was built on the fundamental where an isolated client was created for each of the web browsers; no JavaScript Heavy lifting was required. <\/p>\n\n\n\n<p>This led to a compatibility analysis between <strong>Selenium RC<\/strong> and <strong>WebDriver<\/strong>. As a result of which a more powerful automated testing tool was developed called <strong>Selenium 2<\/strong>.<\/p>\n\n\n\n<p>WebDriver is clean and purely an object-oriented framework. It utilizes the browser\u2019s native compatibility to automation without using any peripheral entity. With the increasing demand, it has gained a large popularity and user base.<\/p>\n\n\n\n<p><strong>Advantages and Disadvantages of Selenium WebDriver:<\/strong><\/p>\n\n\n\n<p>Refer to the following figure for more information about the advantages and disadvantages of WebDriver.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-10.jpg\"><img decoding=\"async\" width=\"586\" height=\"474\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-10.jpg\" alt=\"advantages and disadvantages of WebDriver\" class=\"wp-image-4479\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-10.jpg 586w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-10-300x242.jpg 300w\" sizes=\"(max-width: 586px) 100vw, 586px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span style=\"color: #ff6600;\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-contrast-color\">Selenium 3<\/mark><\/span><\/h3>\n\n\n\n<p><strong>Selenium 3<\/strong> is an advanced version of Selenium 2. It is a tool that is focused on the automation of mobile and web applications. Stating that it supports mobile testing, we mean to say that the WebDriver API has been extended to address the needs of mobile application testing. The tool is expected to be launched soon in the market.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Environment and Technology Stack<\/h2>\n\n\n\n<p>With the advent and addition of each new tool in the Selenium suite, environments and technologies become more compatible. Here is an exhaustive list of environments and technologies supported by Selenium Tools.<\/p>\n\n\n\n<p><strong>Supported Browsers<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-11.jpg\"><img decoding=\"async\" width=\"550\" height=\"220\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-11.jpg\" alt=\"Supported Browsers\" class=\"wp-image-4480\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-11.jpg 550w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-11-300x119.jpg 300w\" sizes=\"(max-width: 550px) 100vw, 550px\" \/><\/a><\/figure>\n\n\n\n<p><strong>Supported Programming Languages<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-12.jpg\"><img decoding=\"async\" width=\"550\" height=\"193\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-12.jpg\" alt=\"Supported Programming Languages\" class=\"wp-image-4481\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-12.jpg 550w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-12-300x105.jpg 300w\" sizes=\"(max-width: 550px) 100vw, 550px\" \/><\/a><\/figure>\n\n\n\n<p><strong>Supported Operating Systems<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-13.jpg\"><img decoding=\"async\" width=\"485\" height=\"126\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-13.jpg\" alt=\"Supported Operating Systems\" class=\"wp-image-4482\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-13.jpg 485w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-13-300x77.jpg 300w\" sizes=\"(max-width: 485px) 100vw, 485px\" \/><\/a><\/figure>\n\n\n\n<p><strong>Supported Testing Frameworks<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-14.jpg\"><img decoding=\"async\" width=\"550\" height=\"204\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-14.jpg\" alt=\"Supported Testing Frameworks\" class=\"wp-image-4483\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-14.jpg 550w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2014\/10\/Selenium-intro-14-300x111.jpg 300w\" sizes=\"(max-width: 550px) 100vw, 550px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>In this tutorial, we tried to make you acquainted with the Selenium suite describing its various components, usages, and their advantages over each other.<\/p>\n\n\n\n<p><strong>Here are the cruxes of this article.<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Selenium is a suite of several automated testing tools, each of them catering to different testing needs.<\/li>\n\n\n\n<li>All these tools fall under the same umbrella of an open-source category and support only web-based testing.<\/li>\n\n\n\n<li>Selenium suite is comprised of 4 basic components; <strong>Selenium IDE, Selenium RC, WebDriver, and Selenium Grid<\/strong>.<\/li>\n\n\n\n<li>The user is expected to choose wisely the right Selenium tool for his\/her needs.<\/li>\n\n\n\n<li>Selenium IDE is distributed as a Firefox plug-in and it is easier to install and use. The user is not required to possess prior programming knowledge. Selenium IDE is an ideal tool for a naive user.<\/li>\n\n\n\n<li>Selenium RC is a server that allows a user to create test scripts in the desired programming language. It also allows the execution of test scripts within a large spectrum of browsers.<\/li>\n\n\n\n<li>Selenium Grid brings out an additional feature to Selenium RC by distributing its test script on different platforms and browsers at the same time for execution, thus implementing the master-slave architecture.<\/li>\n\n\n\n<li>WebDriver is a different tool altogether that has various advantages over Selenium RC. The fusion of Selenium RC and WebDriver is also known as Selenium 2. WebDriver directly communicates with the web browser and uses its native compatibility to automate.<\/li>\n\n\n\n<li>Selenium 3 is the most anticipated inclusion in the Selenium suite, which is yet to be launched in the market. Selenium 3 strongly encourages mobile testing.<\/li>\n<\/ul>\n\n\n\n<p>In the next tutorial, we will discuss the basics of Selenium IDE, its installation, and its features. We would also have a look at the basic terminologies and nomenclatures of Selenium IDE.<\/p>\n\n\n\n<p><strong>Next Selenium Tutorial: <a title=\"https:\/\/www.softwaretestinghelp.com\/selenium-ide-download-and-installation-selenium-tutorial-2\/\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-ide-download-and-installation-selenium-tutorial-2\/\">Introduction to Selenium IDE and its installation<\/a> with a detailed study on all the features of Selenium IDE (coming soon)<\/strong><\/p>\n\n\n\n<p><strong>A remark for the readers<\/strong>: Our next tutorial of the Selenium training series is in processing mode. Meanwhile, you can explore a bit about the Selenium suite and its tools by looking at its official website.<\/p>\n\n\n\n<p><em><strong>About the authors:<\/strong><\/em> <em>Shruti Shrivastava (our main author for this series), Amaresh Dhal, and Pallavi Sharma are helping us to bring this series to our readers.&nbsp;<\/em><\/p>\n\n\n\n<p><strong>Stay tuned and participate by sharing your thoughts, comments, and knowledge. Also, let us know if you think we missed something so that we can include them in our subsequent tutorials.<\/strong><\/p>\n\r\n\t\t\t<div id=\"daexthefup-container\"\r\n\t\t\t\tclass=\"daexthefup-container daexthefup-layout-stacked daexthefup-alignment-center\"\r\n\t\t\t\tdata-post-id=\"4468\">\r\n\r\n\t\t\t\t<div class=\"daexthefup-feedback\">\r\n\t\t\t\t\t<div class=\"daexthefup-text\">\r\n\t\t\t\t\t\t<h3 class=\"daexthefup-title\">Was this helpful?<\/h3>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<div class=\"daexthefup-buttons-container\">\r\n\t\t\t\t\t\t<div class=\"daexthefup-buttons\">\r\n\t\t\t\t\t\t\t\r\n\t\t\t<div class=\"daexthefup-yes daexthefup-button daexthefup-button-type-icon\" data-value=\"1\">\r\n\t\t\t\t\r\n                <svg>\r\n                    <defs>\r\n                        <style>.thumb-up-cls-1{fill:#c9c9c9;}.thumb-up-cls-2{fill:#e1e1e1;}.thumb-up-cls-3{fill:#676767;}<\/style>\r\n                    <\/defs>\r\n                    <g id=\"thumb_up\">\r\n                        <path class=\"thumb-up-cls-2 daexthefup-icon-circle\" d=\"m24,3c11.58,0,21,9.42,21,21s-9.42,21-21,21S3,35.58,3,24,12.42,3,24,3m0-1C11.85,2,2,11.85,2,24s9.85,22,22,22,22-9.85,22-22S36.15,2,24,2h0Z\" \/>\r\n                        <g>\r\n                            <rect class=\"thumb-up-cls-3 daexthefup-icon-secondary-color\" x=\"10\" y=\"20\" width=\"6\" height=\"15\" rx=\"1.5\" ry=\"1.5\" \/>\r\n                            <path class=\"thumb-up-cls-1 daexthefup-icon-primary-color\" d=\"m30.57,9.06l-.49-.1c-.81-.17-1.61.35-1.78,1.16l-5.3,11.74c-.17.81,3.16,1.61,3.97,1.78l1.96.41c.81.17,1.61-.35,1.78-1.16l2.18-10.27c.34-1.61-.7-3.21-2.31-3.56Z\" \/>\r\n                            <path class=\"thumb-up-cls-1 daexthefup-icon-primary-color\" d=\"m38.17,20h-18.67c-.83,0-1.5.67-1.5,1.5v12c0,.83.67,1.5,1.5,1.5h16.27c.71,0,1.33-.5,1.47-1.21l2.4-12c.19-.93-.53-1.8-1.47-1.8Z\" \/>\r\n                        <\/g>\r\n                    <\/g>\r\n                <\/svg>\t\t\t<\/div>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t<div class=\"daexthefup-no daexthefup-button daexthefup-button-type-icon\" data-value=\"0\">\r\n\t\t\t\t\r\n                <svg>\r\n                    <defs>\r\n                        <style>.thumb-down-cls-1{fill:#c9c9c9;}.thumb-down-cls-2{fill:#e1e1e1;}.thumb-down-cls-3{fill:#676767;}<\/style>\r\n                    <\/defs>\r\n                    <g id=\"thumb_down\">\r\n                        <path class=\"thumb-down-cls-2 daexthefup-icon-circle\" d=\"m24,3c11.58,0,21,9.42,21,21s-9.42,21-21,21S3,35.58,3,24,12.42,3,24,3m0-1C11.85,2,2,11.85,2,24s9.85,22,22,22,22-9.85,22-22S36.15,2,24,2h0Z\" \/>\r\n                        <g>\r\n                            <rect class=\"thumb-down-cls-3 daexthefup-icon-secondary-color\" x=\"10\" y=\"13\" width=\"6\" height=\"15\" rx=\"1.5\" ry=\"1.5\" \/>\r\n                            <path class=\"thumb-down-cls-1 daexthefup-icon-primary-color\" d=\"m30.57,38.94l-.49.1c-.81.17-1.61-.35-1.78-1.16l-5.3-11.74c-.17-.81,3.16-1.61,3.97-1.78l1.96-.41c.81-.17,1.61.35,1.78,1.16l2.18,10.27c.34,1.61-.7,3.21-2.31,3.56Z\" \/>\r\n                            <path class=\"thumb-down-cls-1 daexthefup-icon-primary-color\" d=\"m38.17,28h-18.67c-.83,0-1.5-.67-1.5-1.5v-12c0-.83.67-1.5,1.5-1.5h16.27c.71,0,1.33.5,1.47,1.21l2.4,12c.19.93-.53,1.8-1.47,1.8Z\" \/>\r\n                        <\/g>\r\n                    <\/g>\r\n                <\/svg>\t\t\t<\/div>\r\n\r\n\t\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t<\/div>\r\n\r\n\t\t\t\t<div class=\"daexthefup-comment\">\r\n\t\t\t\t\t<div class=\"daexthefup-comment-top-container\">\r\n\t\t\t\t\t\t<label id=\"daexthefup-comment-label\" class=\"daexthefup-comment-label\"><\/label>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"daexthefup-comment-character-counter-container\">\r\n\t\t\t\t\t\t\t\t<div id=\"daexthefup-comment-character-counter-number\"\r\n\t\t\t\t\t\t\t\t\tclass=\"daexthefup-comment-character-counter-number\"><\/div>\r\n\t\t\t\t\t\t\t\t<div class=\"daexthefup-comment-character-counter-text\"><\/div>\r\n\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<textarea id=\"daexthefup-comment-textarea\" class=\"daexthefup-comment-textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"Type your message\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"\r\n\t\t\t\t\t\t\t\t400\t\t\t\t\t\t\t\t\t\"><\/textarea>\r\n\t\t\t\t\t<div class=\"daexthefup-comment-buttons-container\">\r\n\t\t\t\t\t\t<button class=\"daexthefup-comment-submit daexthefup-button\">Submit<\/button>\r\n\t\t\t\t\t\t<button class=\"daexthefup-comment-cancel daexthefup-button\">Cancel<\/button>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t<\/div>\r\n\r\n\t\t\t\t<div class=\"daexthefup-successful-submission-text\">Thanks for your feedback!<\/div>\r\n\r\n\t\t\t<\/div>\r\n\r\n\t\t\t","protected":false},"excerpt":{"rendered":"<p>A Complete List of the Best Selenium Tutorials to Learn and Master Selenium From Scratch:&nbsp; After several frequent requests from STH readers, today we are finally launching our FREE Selenium Tutorial series. In this Selenium training series, we will cover all Selenium testing concepts and its packages with easy-to-understand practical &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"Best Selenium Tutorial for Beginners\" class=\"read-more button\" href=\"https:\/\/www.softwaretestinghelp.com\/selenium-tutorial-1\/#more-4468\" aria-label=\"Read more about Best Selenium Tutorial for Beginners\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":301130,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_helpful_pro_status":1,"footnotes":""},"categories":[214],"tags":[],"class_list":["post-4468","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-selenium-tutorials"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/posts\/4468","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/comments?post=4468"}],"version-history":[{"count":0,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/posts\/4468\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/media\/301130"}],"wp:attachment":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/media?parent=4468"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/categories?post=4468"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/tags?post=4468"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}