Testing a website in a single browser using automation script is a clean and simple way to accelerate your testing. With a single click, you can test your website for all possible errors without manually clicking and navigating to web pages. It’s a modern marvel of software ingenuity that saves hours of manual time and accelerates productivity. However, for all this magic to happen, you would need to build your automation script first.
In a previous post, we focused on setting up a complete test suite environment for running selenium scripts. But that script had a major drawback. That setup was focused on testing on only a single browser. Cross-browser compatibility testing is a major pain point for all testers and it’s also a major test case for all functionality testing cycles.
What Is Cross-Browser Parallel Test Automation?
Cross-browser parallel testing is performed to run a single test across multiple browser combinations, simultaneously. This is a very practical and powerful scenario for automation testing. Cross-browser parallel test automation allows you to scale back execution time while not compromising with coverage of your check and leads to faster test results.
What Is Watir?
Watir is an open source Ruby library which helps to achieve cross-browser automation testing. Watir supports Ruby, which is an object-oriented language and typically it’s simpler and faster than other languages. The good thing about Watir is that it supports any web application irrespective of the technology used to develop that application.
Say goodbye to all your virtual machines and device laboratories. CrossBrowserTesting is a one-stop solution for all of your testing needs. The tool is quite exhaustive and robust with more than 1,500 real desktop and mobile browsers on its availability list. You can easily execute all of your manual and exploratory test cases on real iOS and Android devices, just like your clients and end-users are going to do. The tool has excellent support for visual testing too and comes equipped with native debugging tools as well.
Test your website on any mobile device quickly using the AI enabled cloud testing solutions by Functionize. The Functionize online testing cloud lets you flawlessly perform visual testing, cross-browser testing, and performance testing along with mobile testing. Use the tool to easily scale from one to many mobile devices. Get access to a large range of Android and iOS versions and smoothly maintain your mobile test cases using their root cause analysis engine. Apart from that, the tool has commendable support for test creation, test maintenance, performance, and analytics.
Are you wondering about what cross-browser layout testing is? Well, let me clarify. So, you’ve developed a fast-functioning website using Google Chrome. Everything is working as expected. The UI is neat and you feel a sense of accomplishment. Now, you show this to your product manager, stakeholder, or any other user who has his/her default browser set to Mozilla Firefox/Safari/Opera or any browser other than Google Chrome, and you are surprised to notice the UI look different. This implies that your website isn’t cross-browser compatible. The practice to ensure that the layout of a website looks and runs seamlessly across various browsers is called cross-browser layout testing. We are living in an era where responsive design is turning into a necessity for every website. If you are looking to address the following challenges for responsive site layout across multiple devices, then Galen is one of the best open source frameworks to choose:
Welcome back! If you missed Part 1, you can check it out here.
Selenium WebDriver in Action
Now that you are aware of the basics of Selenium and Browser Drivers, it is time we have a look at a simple WebDriver script in our Selenium WebDriver tutorial. Before we look at the example, please make sure that you have the programming environment ready, i.e. download the IDE of your choice (we are using the Eclipse IDE, with all the required packages/software downloaded from the Eclipse Marketplace). The Selenium Plugin for Eclipse can be downloaded from here. The sample code has been written in the Python language, but you can write the test code in C#, Java, Perl, Ruby, etc.
Selenium is a popular automation testing framework that is primarily used for the cross-browser testing. It is open source and is ideal for automating testing of web applications across different browsers like Firefox, Chrome, Internet Explorer, Microsoft Edge, etc. Selenium has become a renowned framework and is giving stiff competition to other test frameworks like HP QTP (Quick Test Professional) and AKA HP UFT (Unified Functional Testing). This look at Selenium WebDriver will help you develop the basic understanding of the components of the Selenium suite, Selenium WebDriver architecture, and show you how to run automated tests for cross-browser compatibility.
Components of the Selenium Suite
Below are the core components of the Selenium Test Suite
Welcome back! If you missed Part 2, you can check it out here.
21. Study the Browser Landscape for the Target Markets
In our last article, we discussed the importance of testing on browsers that really matter, i.e. browsers that are more prevalent. Hence, before you start designing and coding your website/web app, it is important to have a look at resources like CanIUse which outlines features that are supported on different browsers. For example, you can check whether CSS Grid Layout would work on Safari or not. It is a good starting point to know your target audience and develop features that keep your target audience in mind.
Cross-browser compatibility is important. Very important. We have established that fact in our previous post on the need of a cross browser compatible website. So the next step is, how to make cross-browser compatible websites? How can we make sure that our website provides a smooth and seamless user experience across all browsers that your target audience may have access to, be it Firefox, Chrome, or even Internet Explorer?
If you don’t already know about it, then let me tell you that the next big thing in the web world right now is Accelerated Mobile Pages (AMP). Backed by Google, AMP pages are quite popular in the mobile-first world, especially in emerging markets. If you are building AMP pages of your website then you are on the right track. However, have you wondered about the cross-browser compatibility of these pages?
With more and more diverse types of mobile devices being launched each month, checking cross-browser compatibility of AMP apps is becoming more and more essential. But how can you ensure that your AMP app gives a high quality user experience to your users across all mobile browsers like iOS Safari, Opera, UC browser, Chrome, and so on?
Internet Explorer within a span of 7 years of its debut captured a market share of 95%, but its share has since crumbled to 3.2%. At present, IE experiences loads of compatibility issues and to add to its troubles, even Microsoft has pulled back all its support from IE’s earlier versions and has shifted its focus to its new browser, Microsoft Edge.
But even in spite of the dropped market share and lack of support, IE still manages to hold considerable ground in the market and, trust me when I say this, even the experience of your tiny percentage of users coming from IE can make or break your brand, making it absolutely critical to test for compatibility issues. Although this is a time when cross-browser compatibility is a big thing, all the browsers still behave differently, even when it comes to how margins and paddings are treated, how fonts are rendered, or how default styles of elements are interpreted, etc. IE itself is loaded with such issues and here I’m going to talk about some of the most prominent ones.