{"id":19463,"date":"2021-10-14T07:37:00","date_gmt":"2021-10-14T07:37:00","guid":{"rendered":"https:\/\/app14743.cloudwayssites.com\/?p=19463"},"modified":"2021-10-14T17:32:08","modified_gmt":"2021-10-14T17:32:08","slug":"selenium-4","status":"publish","type":"post","link":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/","title":{"rendered":"What&#8217;s New In Selenium 4?"},"content":{"rendered":"\n<p class=\"has-small-font-size\"><em>(Editor\u2019s Note: This post has been recently updated for accuracy and completeness. It was originally published in June 2020 by Manoj Kumar.)&nbsp;<\/em><\/p>\n\n\n\n<p>There are a lot of cool and new things that just arrived in Selenium 4. If you haven&#8217;t heard, the official Selenium 4 release came out yesterday, and we&#8217;re excited by all the latest updates. We&#8217;ve got a full review of this long-awaited release ready for you, but first here&#8217;s a quick refresher on a few of the most interesting updates for Selenium 4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-what-s-new-in-selenium-4\">What&#8217;s New in Selenium 4?<\/h3>\n\n\n\n<p>After an extensive alpha and beta period to get everything right, Selenium 4 has now been <a href=\"https:\/\/www.selenium.dev\/downloads\/\"><strong>officially released<\/strong><\/a>! <\/p>\n\n\n<blockquote class=\"twitter-tweet\">\n<p lang=\"en\" dir=\"ltr\">? Release ?<\/p>\n<p>?? Selenium 4.0 is here! ??<\/p>\n<p>Read all about in our blog post:<a href=\"https:\/\/t.co\/E8ntH7OdaB\">https:\/\/t.co\/E8ntH7OdaB<\/a><\/p>\n<p>We hope you enjoy Selenium 4, and we can\u2019t wait to see what you do with it!<a href=\"https:\/\/twitter.com\/hashtag\/selenium4?src=hash&amp;ref_src=twsrc%5Etfw\">#selenium4<\/a><\/p>\n<p>\u2014 Selenium (@SeleniumHQ) <a href=\"https:\/\/twitter.com\/SeleniumHQ\/status\/1448289975062220808?ref_src=twsrc%5Etfw\">October 13, 2021<\/a><\/p><\/blockquote>\n<p> <script async=\"\" src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n\n\n<p>In the new release, there have been changes made to the highly anticipated feature, <a href=\"https:\/\/angiejones.tech\/selenium-4-relative-locators\/\">Relative Locators<\/a>, where the returned elements are now sorted by proximity to make the results more deterministic. By proximity, it means being sorted based on the distance from the midpoints of each element&#8217;s <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/Element\/getBoundingClientRect\">bounding client rect<\/a>. Also new is the ability to use any selector (not just tagname) to find any relative locators.<\/p>\n\n\n\n<p>Also in this release, work for NetworkInterceptor has begun. This functionality, once complete, will be a part of the new <a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-chrome-devtools-protocol-cdp-how-does-it-work\/\">ChromeDevTools<\/a> feature and will allow testers to stub out responses to network requests!<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-a-refresher-getting-started-with-selenium-4\">A Refresher: Getting Started with Selenium 4<\/h3>\n\n\n\n<p>Here are a few links outlining how you can get started with Selenium 4:<\/p>\n\n\n\n<ul><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/new-features-selenium4\/\">New features in Selenium 4<\/a>\u00a0<\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/how-to-install-selenium-4\/\">How to Upgrade to Selenium 4<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4-migration\/\">How to Migrate from Selenium 3 to Selenium 4<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4-chrome-devtools\/\">Using Chrome DevTools using Selenium 4<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-chrome-devtools-protocol-cdp-how-does-it-work\/\">Selenium Chrome DevTools Protocol (CDP) API: How Does It Work?<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-grid-4\/\">Selenium 4 Grid for Scaling<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4-faqs\/\">Selenium 4 FAQs<\/a><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Watch Simon Stewart Break Down the Selenium 4 Updates<\/h2>\n\n\n\n<p>Although Selenium 4 is designed as a drop-in replacement for Selenium 3, it has some new tricks to help make your life as a tester easier. These include things like \u201crelative locators,\u201d and new support for intercepting network traffic, changes in how you can create a new Selenium instance, and more! Catch Selenium project lead Simon Stewart as he explains how these new features work, and also demonstrates how to use them. Learn how to take advantage of all that Selenium 4 can offer your tests!<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/app14743.cloudwayssites.com\/event\/using-selenium-4\/\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" width=\"773\" height=\"502\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2021\/06\/simon-stewart-selenium-4-talk.jpg\" alt=\"\" class=\"wp-image-31615\" srcset=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2021\/06\/simon-stewart-selenium-4-talk.jpg 773w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2021\/06\/simon-stewart-selenium-4-talk-300x195.jpg 300w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2021\/06\/simon-stewart-selenium-4-talk-768x499.jpg 768w\" sizes=\"(max-width: 773px) 100vw, 773px\" \/><\/a><\/figure>\n\n\n\n<p>What is your plan to move to Selenium 4.0? If you do not plan to upgrade, why not? What is preventing you from upgrading now that the official release is out?<\/p>\n\n\n\n<p>To recap everything that&#8217;s new in the latest version of Selenium, keep reading for a full review of the cool things that have arrived in Selenium 4:<\/p>\n\n\n\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-s-new-in-selenium-4-1\">What&#8217;s New in Selenium 4<\/h2>\n\n\n\n<p class=\"has-small-font-size\"><\/p>\n\n\n\n<p>Selenium 4 is now released!<\/p>\n\n\n\n<p>A lot of developments have happened since Selenium 4 was announced during the <a href=\"https:\/\/www.youtube.com\/watch?v=ypmrrJmgM9U\" target=\"_blank\" rel=\"noopener noreferrer\">State of the Union<\/a>\u00a0Keynote by <a href=\"https:\/\/twitter.com\/shs96c\" target=\"_blank\" rel=\"noopener noreferrer\">Simon Stewart<\/a>\u00a0and <a href=\"https:\/\/twitter.com\/manoj9788\" target=\"_blank\" rel=\"noopener noreferrer\">Manoj Kumar<\/a>. There has been a significant amount of work done and we&#8217;ve released at least <em>six<\/em>\u00a0alpha versions and <em>four<\/em> betas of Selenium 4 for users to try out and report back with any potential bugs so that we can make it right. Now, the official release is here.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"360\" height=\"372\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2017\/11\/Manoj-Kumar-blog.jpg\" alt=\"Manoj Kumar\" class=\"wp-image-12201\" srcset=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2017\/11\/Manoj-Kumar-blog.jpg 360w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2017\/11\/Manoj-Kumar-blog-290x300.jpg 290w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2017\/11\/Manoj-Kumar-blog-30x30.jpg 30w\" sizes=\"(max-width: 360px) 100vw, 360px\" \/><\/figure>\n\n\n\n<p>It is exciting times for the Selenium community as we have a lot of new features and enhancements that make Selenium WebDriver even more usable and scalable for practical use cases.<\/p>\n\n\n\n<p>Selenium is a suite of tools designed to support different user groups:<\/p>\n\n\n\n<ul><li>Selenium IDE supports rapid test development, and doesn\u2019t require extensive programming knowledge<\/li><li>WebDriver provides a friendly and flexible API for browser automation in most major programming languages<\/li><li>Grid makes it possible to distribute and run your tests across more than just one machine.<\/li><\/ul>\n\n\n\n<p>Let us dive in and take a look at some of the significant features that were released in each of these tools and share some of the cool upcoming features that are now available in Selenium 4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h.fmxm7lpwhuma\">Selenium WebDriver<\/h2>\n\n\n\n<p>One of the main reasons to release WebDriver as a major version (Selenium 4) is because of the complete W3C protocol adoption. The W3C protocol dialect has been available since the 3.8 version of Selenium WebDriver along with the JSON wire protocol. This change in protocol isn&#8217;t going to impact the users in any way, as all major browser drivers (such as <a href=\"https:\/\/github.com\/mozilla\/geckodriver\">geckodriver<\/a> and <a href=\"https:\/\/chromedriver.chromium.org\/\">chromedriver<\/a>), and many third party projects, have already fully adopted the W3C protocol.<\/p>\n\n\n\n<p>However, there are some notable new APIs, as well as the removal of deprecated APIs in the WebDriver API, such as:<\/p>\n\n\n\n<ul><li>Elements:<ul><li>The FindsBy* interfaces (e.g. FindsByID, FindsByCss &#8230;) have been deleted. The recommended alternative is to use a `By` instance passed to `findElements` instead.<\/li><li>\u201c<a rel=\"noopener noreferrer\" href=\"https:\/\/angiejones.tech\/selenium-4-relative-locators\/\" target=\"_blank\">Relative locators<\/a>\u201d: a friendly way of locating elements using terms that users use, like &#8220;near&#8221;, &#8220;left of&#8221;, &#8220;right of&#8221;, &#8220;above&#8221; and &#8220;below&#8221;. This was inspired by an automation tool called <a rel=\"noopener noreferrer\" href=\"https:\/\/sahipro.com\/\" target=\"_blank\">Sahi<\/a>&nbsp;by Narayan Raman, and the approach has also been adopted by tools like <a rel=\"noopener noreferrer\" href=\"https:\/\/taiko.dev\/\" target=\"_blank\">Taiko<\/a>&nbsp;by ThoughtWorks.<\/li><li>A richer set of exceptions, providing better information about why a test might have failed. These include exceptions like ElementClickInterceptedError, NoSuchCookieError &amp; more.<\/li><\/ul><\/li><li>Chrome Debugging Protocol (CDP):<ul><li>Although Selenium works on every browser, for those browsers that support it, Selenium 4 offers CDP integration, which allows us to take advantage of the enhanced visibility into the browser that a debugging protocol gives.<\/li><li>Because the CDP is, as the name suggests, designed for debuggers, it\u2019s not the most user friendly of APIs. Fortunately, the Selenium team is working to provide comfortable cross-language APIs to cover common requirements, such as network stubbing, capturing logs, <a rel=\"noopener noreferrer\" href=\"https:\/\/angiejones.tech\/selenium-4-mocking-geolocation\/\" target=\"_blank\">mocking geolocation<\/a>, and more.<\/li><\/ul><\/li><li>Browser Specifics:<ul><li>A new ChromiumDriver extends packages for both Chrome and Edge browsers.<\/li><li>A new method to allow install and uninstall add-ons for Firefox browser at runtime.<\/li><\/ul><\/li><li>Window Handling: <ul><li>Users can go in full-screen mode during script executions. <\/li><li>Better control of whether new windows open as tabs, or in their own window.<\/li><\/ul><\/li><li>Screenshots: <ul><li>An option to grab a screenshot at UI element level. Unlike the usual view-port level screenshot. <\/li><li>Full Page Screenshot support for Firefox browser.<\/li><\/ul><\/li><\/ul>\n\n\n\n<p><strong>What&#8217;s next in WebDriver beyond Selenium 4?<\/strong><\/p>\n\n\n\n<p>It would be nice to have users extend the locator strategy like FindByImage or <a href=\"https:\/\/testautomationu.applitools.com\/ai-for-element-selection-erasing-the-pain-of-fragile-test-scripts\/\">FindbyAI (like in Appium)<\/a>&nbsp;&#8211; right now we have a hardcoded list of element location strategies. Providing a lightweight way of extending this set, particularly when using Selenium Grid, is on the roadmap.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h.1m0sk6c3h4j7\">Selenium IDE<\/h2>\n\n\n\n<p>The original Selenium IDE reached its end of life in August 2017, when Mozilla released Firefox 55, which switched its add-ons from the Mozilla-specific \u201cXPI\u201d format to the standardised &#8220;Web Extension&#8221; mechanism. This meant that the original Selenium IDE would no longer work in Firefox versions moving forwards.<\/p>\n\n\n\n<p>Thanks to Applitools, <a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-ide-with-dave-haeffner\/\">Selenium IDE has been revived<\/a>! It is one of the significant improvements in Selenium 4 and includes notable changes like:<\/p>\n\n\n\n<ul><li>A new shiny UI, for better user experience.<\/li><li>A web-extensions based plugin that makes it possible to be available in Chrome and Firefox browsers as well as for any other browser that allows web-extension based plugins. It will soon be available in the MS Edge store.<\/li><li>Code export is available now for all the official language bindings such as Java, .Net, Python, Ruby &amp; JavaScript.<\/li><li>A new plugin system that can allow users to create new commands, code exports for new languages and frameworks. The plugins can be shipped as extensions. An example of a plugin is <a href=\"https:\/\/chrome.google.com\/webstore\/detail\/applitools-for-selenium-i\/fbnkflkahhlmhdgkddaafgnnokifobik\" target=\"_blank\" rel=\"noopener noreferrer\">Applitools for Selenium IDE<\/a>&nbsp;which enables codeless visual testing.<\/li><li>A new CLI runner called the &#8220;Selenium-side-runner&#8221; running on NodeJs. It allows users to execute the recorded tests in parallel with multi-browser capability.<\/li><\/ul>\n\n\n\n<ul><li>A control flow mechanism which helps users write better tests using \u201cwhile\u201d &amp; \u201cif\u201d conditions.<\/li><li>A backup element selector that can fall back and select elements using a different locator strategy like ID, CSS &amp; XPath based on the recorded information. This helps make tests more stable and reliable.<\/li><li>Selenium IDE is <em>accessible<\/em>! We&#8217;ve gone above and beyond to make sure that it conforms to some of the latest accessibility guidelines and supports necessary controls like focus order, roles, tooltips, announcing the start of recording, color and design.<\/li><\/ul>\n\n\n\n<p><strong>What&#8217;s next in Selenium IDE?<\/strong><\/p>\n\n\n\n<p>A remarkable milestone for Selenium IDE is that it&#8217;s going to be available as a standalone app, re-written to be an <em>Electron app<\/em><em>.<\/em>&nbsp;By binding tightly to the browser, this would allow us to listen out for events from the browser, making test recording more powerful and feature-rich.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h.6n9h1ej7fb4v\">Selenium Grid<\/h2>\n\n\n\n<p>One of the essential improvements in Selenium 4 is the ability to use <a href=\"https:\/\/github.com\/SeleniumHQ\/docker-selenium\" target=\"_blank\" rel=\"noopener noreferrer\">Docker<\/a>&nbsp;to spin up containers instead of users setting up heavy virtual machines. Selenium Grid has been redesigned so that users can deploy it on <a href=\"https:\/\/github.com\/manoj9788\/kubernetes-docker-selenium\" target=\"_blank\" rel=\"noopener noreferrer\">Kubernetes<\/a>&nbsp;for excellent scaling and self-healing capabilities.<\/p>\n\n\n\n<p>Let&#8217;s look at some of the significant improvements:<\/p>\n\n\n\n<ul><li>We&#8217;ve enhanced Selenium Grid deployment for more scalable and traceable infrastructure.<\/li><li>Users can deploy Grid, either as Standalone, Hub-Node or in a distributed mode with different processes like in the below picture,<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"1001\" src=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/Screenshot-2020-05-20-at-3.57.26-PM.png\" alt=\"A deployment of Selenium Grid in a distributed mode with different processes.\" class=\"wp-image-19462\" srcset=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/Screenshot-2020-05-20-at-3.57.26-PM.png 1600w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/Screenshot-2020-05-20-at-3.57.26-PM-300x188.png 300w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/Screenshot-2020-05-20-at-3.57.26-PM-1024x641.png 1024w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/Screenshot-2020-05-20-at-3.57.26-PM-768x480.png 768w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/Screenshot-2020-05-20-at-3.57.26-PM-1536x961.png 1536w, https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/Screenshot-2020-05-20-at-3.57.26-PM-335x211.png 335w\" sizes=\"(max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<ul><li>Observability is a way of measuring systems\u2019 internal state; a much-needed capability to <a href=\"https:\/\/github.com\/manoj9788\/tracing-selenium-grid\" target=\"_blank\" rel=\"noopener noreferrer\">trace<\/a>&nbsp;what happens when an API is invoked or a new session creation is requested. This can help admins and developers when debugging, as providing insight into the root cause when strange problems arise.<\/li><li>Selenium Grid, by default, communicates via HTTP. This is fine for most use cases within the firewall but problematic when your server is exposed to the internet. Now users can have their Grid communicate via the HTTPS protocol with support for TLS connections.<\/li><li>Unlike in the old versions, where we&#8217;ve allowed only IPV4 based IP addresses, &nbsp;now we support IPV6 addresses as well.<\/li><li>Grid has always allowed you to use configuration files when spinning up Grid instances. In Grid 4, those files can be written using <a href=\"https:\/\/github.com\/toml-lang\/toml\" target=\"_blank\" rel=\"noopener noreferrer\">TOML<\/a>, which makes them easier for humans to understand..<\/li><\/ul>\n\n\n\n<p><strong>What&#8217;s next in Selenium Grid?<\/strong><\/p>\n\n\n\n<p>As you follow, there have been exciting changes and performance improvements. There are a few more that expected to be added like:<\/p>\n\n\n\n<ul><li>A revived UI for Grid console<\/li><li>GraphQL for querying Grid<\/li><li>More work on Grid stability and resilience<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h.t5t1jy4sfi9o\">More Goodies<\/h2>\n\n\n\n<p>We&#8217;ve also refreshed our branding, documentation, and the website, so check out <a href=\"https:\/\/www.selenium.dev\/\" target=\"_blank\" rel=\"noopener noreferrer\">Selenium.dev<\/a>!<\/p>\n\n\n\n<p>Selenium is an Open-Source project, and we do this voluntarily so there are never definite timelines that can be promised, but thanks for sticking with us and we&#8217;re excited that the new release is now here.<\/p>\n\n\n\n<p>Please come and give us a hand if you have the energy and time! Happy hacking!<\/p>\n\n\n\n<p>Thanks Simon Stewart in helping review this post!<\/p>\n\n\n\n<p><em>Manoj Kumar is a Principal Consultant at ThoughtWorks. Manoj is an avid open-source enthusiast and a committer to the Selenium &amp; Appium project. And a member of the project leadership committee for Selenium. Manoj has also contributed to various libraries and frameworks in the automated testing ecosystem like ngWebDriver, Protractor and Serenity to name a few. An avid accessibility practitioner who loves to share knowledge and is a voluntary member of the W3C ACT-R group. In his free time, he contributes to Open-Source projects or research on Accessibility and enjoys spending time with his family. He blogs at<a rel=\"noopener noreferrer\" href=\"http:\/\/assertselenium.com\" target=\"_blank\">&nbsp;AssertSelenium<\/a>.<\/em><\/p>\n\n\n\n<p><\/p>\n\n\n<div class=\"small-cta is-style-\">\n        <h2 class=\"title\"><p>Supercharge Selenium with Applitools Visual AI<\/p>\n<\/h2>\n      <a href=\"https:\/\/app14743.cloudwayssites.com\/selenium-lp\/\" class=\"btn\">Get STarted<\/a>\n  <\/div>\n\n\n<h2 class=\"wp-block-heading\">Read More<\/h2>\n\n\n\n<ul><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/7-must-read-selenium-tutorials\/\">7 Must-read Selenium Tutorials<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/next-generation-cross-browser-testing\/\">The Next Generation of Cross Browser Testing is Ultrafast<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium\/\">Selenium Functional Testing with Applitools<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/add-visual-ai\/\">Five Data-Driven Reasons To Add Visual AI To Your End-To-End Tests<\/a><\/li><li><a href=\"https:\/\/app14743.cloudwayssites.com\/blog\/javascript-selenium-applitools\/\">JavaScript Visual UI Testing with Selenium [step by step]<\/a><\/li><\/ul>\n\n\n\n<p>Cover Photo by <a href=\"https:\/\/unsplash.com\/@rutzsepp?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\">Sepp Rutz<\/a> on <a href=\"https:\/\/unsplash.com\/?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\">Unsplash<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>There are a lot of cool new things coming up in Selenium 4. We&#8217;re getting very close to the official release, and we&#8217;ve got a full review of what&#8217;s coming for you.<\/p>\n","protected":false},"author":55,"featured_media":24113,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[10004],"tags":[10061,10139,10142,12688,10152,12690],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.5 (Yoast SEO v24.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What&#039;s New In Selenium 4? - AI-Powered End-to-End Testing | Applitools<\/title>\n<meta name=\"description\" content=\"Manoj Kumar, guest blogger, walks through features, enhancements, and explains how Selenium 4 makes it much easier to find elements and automate actions.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What&#039;s New In Selenium 4?\" \/>\n<meta property=\"og:description\" content=\"There are a lot of cool new things coming up in Selenium 4. We&#039;re getting very close to the official release, and we&#039;ve got a full review of what&#039;s coming for you.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/\" \/>\n<meta property=\"og:site_name\" content=\"AI-Powered End-to-End Testing | Applitools\" \/>\n<meta property=\"article:published_time\" content=\"2021-10-14T07:37:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-10-14T17:32:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1334\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Manoj Kumar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Manoj Kumar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/\"},\"author\":{\"name\":\"Manoj Kumar\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/612ea1c2dfac8148b985056dab93233d\"},\"headline\":\"What&#8217;s New In Selenium 4?\",\"datePublished\":\"2021-10-14T07:37:00+00:00\",\"dateModified\":\"2021-10-14T17:32:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/\"},\"wordCount\":1922,\"publisher\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg\",\"keywords\":[\"Functional Testing\",\"Selenium\",\"Selenium IDE\",\"Technical Leaders\",\"Test Automation\",\"Test Engineers\"],\"articleSection\":[\"Advanced Topics\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/\",\"name\":\"What's New In Selenium 4? - AI-Powered End-to-End Testing | Applitools\",\"isPartOf\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg\",\"datePublished\":\"2021-10-14T07:37:00+00:00\",\"dateModified\":\"2021-10-14T17:32:08+00:00\",\"description\":\"Manoj Kumar, guest blogger, walks through features, enhancements, and explains how Selenium 4 makes it much easier to find elements and automate actions.\",\"breadcrumb\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#primaryimage\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg\",\"contentUrl\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg\",\"width\":2000,\"height\":1334,\"caption\":\"Photo by Sepp Rutz on Unsplash\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/app14743.cloudwayssites.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Advanced Topics\",\"item\":\"https:\/\/app14743.cloudwayssites.com\/blog\/category\/advanced-topics\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"What&#8217;s New In Selenium 4?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#website\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/\",\"name\":\"Applitools Visual AI\",\"description\":\"Applitools delivers full end-to-end test automation with AI infused at every step.\",\"publisher\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/app14743.cloudwayssites.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#organization\",\"name\":\"Applitools\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/03\/applitools.png\",\"contentUrl\":\"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/03\/applitools.png\",\"width\":156,\"height\":28,\"caption\":\"Applitools\"},\"image\":{\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/612ea1c2dfac8148b985056dab93233d\",\"name\":\"Manoj Kumar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b2908610e4c5f0842891048640ad6e99?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b2908610e4c5f0842891048640ad6e99?s=96&d=mm&r=g\",\"caption\":\"Manoj Kumar\"},\"sameAs\":[\"http:\/\/assertselenium.com\",\"https:\/\/www.linkedin.com\/in\/manojkumar9788\/\"],\"url\":\"https:\/\/app14743.cloudwayssites.com\/blog\/author\/manojkumar\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What's New In Selenium 4? - AI-Powered End-to-End Testing | Applitools","description":"Manoj Kumar, guest blogger, walks through features, enhancements, and explains how Selenium 4 makes it much easier to find elements and automate actions.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/","og_locale":"en_US","og_type":"article","og_title":"What's New In Selenium 4?","og_description":"There are a lot of cool new things coming up in Selenium 4. We're getting very close to the official release, and we've got a full review of what's coming for you.","og_url":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/","og_site_name":"AI-Powered End-to-End Testing | Applitools","article_published_time":"2021-10-14T07:37:00+00:00","article_modified_time":"2021-10-14T17:32:08+00:00","og_image":[{"width":2000,"height":1334,"url":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg","type":"image\/jpeg"}],"author":"Manoj Kumar","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Manoj Kumar","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#article","isPartOf":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/"},"author":{"name":"Manoj Kumar","@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/612ea1c2dfac8148b985056dab93233d"},"headline":"What&#8217;s New In Selenium 4?","datePublished":"2021-10-14T07:37:00+00:00","dateModified":"2021-10-14T17:32:08+00:00","mainEntityOfPage":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/"},"wordCount":1922,"publisher":{"@id":"https:\/\/app14743.cloudwayssites.com\/#organization"},"image":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#primaryimage"},"thumbnailUrl":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg","keywords":["Functional Testing","Selenium","Selenium IDE","Technical Leaders","Test Automation","Test Engineers"],"articleSection":["Advanced Topics"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/","url":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/","name":"What's New In Selenium 4? - AI-Powered End-to-End Testing | Applitools","isPartOf":{"@id":"https:\/\/app14743.cloudwayssites.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#primaryimage"},"image":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#primaryimage"},"thumbnailUrl":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg","datePublished":"2021-10-14T07:37:00+00:00","dateModified":"2021-10-14T17:32:08+00:00","description":"Manoj Kumar, guest blogger, walks through features, enhancements, and explains how Selenium 4 makes it much easier to find elements and automate actions.","breadcrumb":{"@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#primaryimage","url":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg","contentUrl":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/06\/sepp-rutz-hZQOby6ZdIE-unsplash.jpg","width":2000,"height":1334,"caption":"Photo by Sepp Rutz on Unsplash"},{"@type":"BreadcrumbList","@id":"https:\/\/app14743.cloudwayssites.com\/blog\/selenium-4\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/app14743.cloudwayssites.com\/"},{"@type":"ListItem","position":2,"name":"Advanced Topics","item":"https:\/\/app14743.cloudwayssites.com\/blog\/category\/advanced-topics\/"},{"@type":"ListItem","position":3,"name":"What&#8217;s New In Selenium 4?"}]},{"@type":"WebSite","@id":"https:\/\/app14743.cloudwayssites.com\/#website","url":"https:\/\/app14743.cloudwayssites.com\/","name":"Applitools Visual AI","description":"Applitools delivers full end-to-end test automation with AI infused at every step.","publisher":{"@id":"https:\/\/app14743.cloudwayssites.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/app14743.cloudwayssites.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/app14743.cloudwayssites.com\/#organization","name":"Applitools","url":"https:\/\/app14743.cloudwayssites.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/logo\/image\/","url":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/03\/applitools.png","contentUrl":"https:\/\/app14743.cloudwayssites.com\/wp-content\/uploads\/2020\/03\/applitools.png","width":156,"height":28,"caption":"Applitools"},"image":{"@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/612ea1c2dfac8148b985056dab93233d","name":"Manoj Kumar","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/app14743.cloudwayssites.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/b2908610e4c5f0842891048640ad6e99?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b2908610e4c5f0842891048640ad6e99?s=96&d=mm&r=g","caption":"Manoj Kumar"},"sameAs":["http:\/\/assertselenium.com","https:\/\/www.linkedin.com\/in\/manojkumar9788\/"],"url":"https:\/\/app14743.cloudwayssites.com\/blog\/author\/manojkumar\/"}]}},"_links":{"self":[{"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/posts\/19463"}],"collection":[{"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/users\/55"}],"replies":[{"embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/comments?post=19463"}],"version-history":[{"count":0,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/posts\/19463\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/media\/24113"}],"wp:attachment":[{"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/media?parent=19463"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/categories?post=19463"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/app14743.cloudwayssites.com\/wp-json\/wp\/v2\/tags?post=19463"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}