The Selenium tool slowly but steadily continues to evolve, gradually turning into a standard for automating web applications and even penetrating into the field of automating mobile applications (including native and hybrid).
In the fall of 2013, I twice at conferences ( SECR first, then ConfeT & QA ) talked about how the Selenium tool was developing and what the current state of affairs was. I bring to your attention the record made at the second of the aforementioned conferences.
')
Summary (with timing):
00:00 - performance 01:15 - A couple of introductory words about the W3C WebDriver standard 01:53 - Review of approaches to automate web applications: “via HTTP” and “via browser” 03:13 - Advantages and disadvantages of the “via HTTP” automation approach 05:13 - the advantages and disadvantages of the approach to automation "through the browser" 06:48 - Overview of approaches to integrating automation tools with browsers 08:10 - two ways of introducing JavaScript into the browser - “in front” and “behind”, their advantages and disadvantages 09:28 - two ways to execute embedded commands in the browser - “push” and “pull” 11:01 - Protocol of interaction with the browser, history of its origin and development, W3C WebDriver standard 13:11 - how protocol standardization solves some of the shortcomings of the browser-based automation approach 14:34 - Chrome browser integration architecture 15:28 - Architecture of integration with the Opera browser (on the Presto engine) 15:53 ​​- Internet Explorer integration architecture 16:27 - Firefox browser integration architecture, now and in the future (Marionette project) 17:37 - again about the standard W3C WebDriver 18:06 - what to do with old versions of browsers, in which there is no support for the standard and there will not be 19:13 - PhantomJS and SlimerJS headless browsers as a way to solve the problem of "slow automation" 20:30 - Selenium Grid: distributed architecture as a way to solve the problem of "slow automation" 21:38 - cloud services offering the ability to launch browsers (Selenium Grid in the cloud)