|
| 1 | ++++ |
| 2 | +Description = "Selenium 4 Beta 1 Released!" |
| 3 | +Title = "Selenium 4 Beta 1 Released" |
| 4 | +Date = 2021-02-15 |
| 5 | +Author = "Simon Stewart" |
| 6 | +AuthorLink = "https://twitter.com/shs96c" |
| 7 | +tags = ["beta", "selenium", "status"] |
| 8 | +categories = ["general", "releases"] |
| 9 | ++++ |
| 10 | + |
| 11 | +We're very happy to announce the release of the first beta of Selenium |
| 12 | +4. We're shipping this for Java, .Net, Python, Ruby, and JavaScript, |
| 13 | +so if you're using any of those languages, go and grab it from your |
| 14 | +package manager of choice! |
| 15 | + |
| 16 | +This has been the culmination of a lot of work by so many people, not |
| 17 | +only the [project TLC][tlc], but also of literally hundreds of people: |
| 18 | +205 since we released Selenium 3.141.59, at the last count. A big |
| 19 | +thank you to everybody who's helped make this possible! |
| 20 | + |
| 21 | +So, what's changed since Selenium 3? The answer is both "**not much**" |
| 22 | +and also "**almost everything**". |
| 23 | + |
| 24 | +By "**not much**", I mean that if your tests are working with Selenium |
| 25 | +3 right now, you should be able to just upgrade your dependency to |
| 26 | +Selenium 4. You will find that things that were marked "deprecated" |
| 27 | +are now gone, but the advantage of the long time between the last |
| 28 | +Selenium 3 release and this is that you've had plenty of time to try |
| 29 | +and find alternatives. |
| 30 | + |
| 31 | +If this doesn't work, please let us know! We've worked hard to ensure |
| 32 | +compatibility between the releases, but it's possible we may have |
| 33 | +missed some things. |
| 34 | + |
| 35 | +One thing you may want to do to get ready for the update (which you |
| 36 | +can do before updating the dependency itself!) is to update the |
| 37 | +drivers you need. In particular, please update [geckodriver][] to |
| 38 | +0.29.0 or later. |
| 39 | + |
| 40 | +By "**almost everything**", I mean that under the covers there have |
| 41 | +been substantial changes. We've rewritten the Selenium server to allow |
| 42 | +it to work not only in the familiar "standalone" and "hub and node" |
| 43 | +modes, but also in a new "distributed" mode, which makes it |
| 44 | +signifcantly easier to deploy to something such as Kubernetes in a way |
| 45 | +that scales well. |
| 46 | + |
| 47 | +The new server is also wired up with support for [OpenTelemetry][] and |
| 48 | +exposes a [GraphQL endpoint][graphql], so that figuring what's going |
| 49 | +on in the Grid, and tracking down what's gone wrong if something |
| 50 | +happens, is easier than ever. |
| 51 | + |
| 52 | +Not all the changes are server-side. We recently wrote about the [new |
| 53 | +features in Selenium 4][se4] that you can use in your tests, but some |
| 54 | +of the main highlights are: |
| 55 | + |
| 56 | + * Relative locators, for finding elements using terms that make |
| 57 | + sense to us humans. |
| 58 | + * The ability to intercept network traffic |
| 59 | + * Authentication with basic or digest authentication. |
| 60 | + |
| 61 | +We'll be telling you more about these features in later blog posts, |
| 62 | +and as we improve our documentation. |
| 63 | + |
| 64 | +If this sounds interesting, please download the beta from your |
| 65 | +favourite package manager (maven, nuget, npm, pip, or the gem), or |
| 66 | +directly from the [Selenium site][download]. |
| 67 | + |
| 68 | +[download]: /downloads |
| 69 | +[geckodriver]: https://github.com/mozilla/geckodriver/releases |
| 70 | +[graphql]: https://github.com/SeleniumHQ/selenium/blob/selenium-4.0.0-beta-1/java/server/src/org/openqa/selenium/grid/graphql/selenium-grid-schema.graphqls |
| 71 | +[OpenTelemetry]: https://opentelemetry.io |
| 72 | +[se4]: /blog/2020/what-is-coming-in-selenium-4-new-tricks/ |
| 73 | +[tlc]: /structure/#tlc |
0 commit comments