How Chrome 45 Changed Testing: What You Need To Know

  September 10, 2015

Chrome 45 was released last week for Windows, Mac, Linux, and Android. With this release, Google has particularly focused on making Chrome more secure, stable, and power-efficient.  Of course, given over 1 billion users, Chrome will continue to remain an integral part of every tester’s test automation strategy. Below are some of the big developer features included with this release that will affect testing:

Chrome Automatically Blocks Flash Content

Chrome 45 automatically pauses Flash content that is not essential to the web page. It is critical to note that anything central to your web page such as a flash video embedded in a website would still work without interruption. While this move primarily impacts internet ads using Adobe Flash, it also paints a broad picture of the way future applications will be built and in turn will need to be tested.

Remember Google’s revenue depends on these Flash ads, and hence while ditching Flash technology points to a wider effort browser vendors are placing prominence on reliability and performance. Add to that, You Tube’s January move to ditch flash for HTML5, or even Facebook’s, Amazon’s, or Mozilla’s decision to end Flash and we can see the direction that the web is ultimately going.

Chrome drops support for NPAPI plugin

With Chrome 45, Google also deprecated support for Netscape Plugin Application Programming Interface (NPAPI), a cross-platform plugin often used for rendering the web page content.  So in case your test cases are currently using NPAPI for accessing the browser, after an update to version 45, your existing test cases wouldn’t work.

Continued growth of Open Standards (HTML5, CSS and JavaScript):

Back in 2010, Steve Jobs wrote about how flash wouldn’t be a great fit for scaling to content to mobile devices. You can read the post here. To sum up, high latency and battery consumption of flash combined with security and reliability concerns made Flash not a great fit for mobile. And with mobile becoming the primary channel for driving customer engagement and monetization, the demise of Flash was eminent.

With almost all browsers removing support for Flash, more and more web applications will be built through open standards as HTML5, CSS and JavaScript. This creates challenges from a functionality perspective. For instance, most of these open standard based sites use dynamically drawn data through the use JavaScript and HTML5. And incase you are recording automated scripts based on the GUI, tests can be brittle and complex. The dynamic content essentially means that test cases deigned at the GUI layer would break whenever a change is introduced. A key question to answer thereby would be: How to design test cases when the content of the website keeps changing? A good way of overcoming this is to reduce the dependence of automated test cases at the GUI layer, and focus on test automation pyramid strategy.

An integrated GUI and API testing solution can make the process of implementing a test automation pyramid easier as it ensures changes made to the API test cases are automatically reflected at the GUI level as well.Test Automation Pyramid

The modern development also creates challenges from a performance perspective.  Asynchronous methods such as WebSocket can be traditionally hard to load test as communication between browser and server is way too frequent to generate correct load testing scenarios. Associating traffic to respective functions like clicking a button or loading a page through the use of correct tools is paramount.

Speed and Security is Supreme

Another important driver for both these developments was Google’s focus on improving security and speed of Chrome. In case of Flash, it’s been a way of executing malicious code as it can often end up running ads automatically on websites. Whereas in the case of NPAPI, Google is making it difficult for testers to bypass UI and restricting access through plugins. Again, open web technologies (HTML/CSS/JS) are mentioned as an alternative to platform-specific plugins.

As a result of these developments, a critical challenge for testers is to keep the framework up-to-date as the browsers become increasingly secure and locked down. We at SmartBear have been following these developments closely over the past weeks and as a result recently released new versions of TestComplete and LoadComplete. Check out their features, and if you have encountered any other new impacts of testing Chrome 45, let us know in the comments!