Users have many different devices and browsers at their disposal today. With such a wide variety of tablets, cell phones, and an increasing number of legacy browsers, software teams are challenged to make sure their products work sufficiently across different browsers and devices. This is where cross browser testing comes into the picture.
What Is Cross Browser Testing?
Cross browser testing involves testing an application across a variety of browsers to ensure it behaves consistently. In today’s word, this means testing on mobile browsers, desktop browsers, and even tablets. The fact is, each browser interprets things a little differently. Bring into consideration many different screen sizes, and you have a lot of different variables to consider.
Why Is It Important?
We covered the importance of cross browser testing in another post. In general, cross browser testing is a necessary part of the testing process as it ensures all users have a consistent experience using your product. If 50% of your users are using Firefox and a major piece of functionality is broken in that browser, that’s 50% of your users who are impacted.
Cross browser testing also arms your support team with information on how certain browsers behave. This information is always helpful in answering support questions and debugging issues.
What Should Be Tested?
In general, you’re looking for two things in cross browser testing:
- The appearance of the page on the browser.
- The functionality of the page on the browser.
Determining which devices and browsers to test requires a bit of digging. Ask yourself the following questions…
- Where are people using your application?
- Are they using it on their mobile device or are they only using it on desktops?
- What requirements has the product manager defined around supported devices/browsers?
You’ll likely want to leverage some usage metrics in order to make these decisions and validate any assumptions. For example, you may be surprised by the number of IE9 users using your product – this can lead to a heavier focus on older browsers. You’ll need to consider all of these things before diving into cross browser testing.
It’s not necessary to test 100% of the functionality across all browsers. Besides, this would take a considerable amount of time. The best approach is to test all of the functionality on a single browser (the most used one according to your usage data) and then test only the critical features and high-risk UI areas on other browsers. Chances are, if your code is written well, the majority of your application will behave similarly across all browsers. Key word: “majority”.
Cross Browser Testing Tools
Cross browser testing comes with the challenge of needing to test on physical devices/browsers – many of which you may not have direct access to. Lucky for us, there are a number of cross browser testing tools that allow you to view your application on different browsers and devices.
Now, nothing is better than testing on the actual browser/device, but many of these tools are pretty reliable. While most of them do cost money, keep in mind, the investment will save you in the long run. It can get pretty expensive to have multiple devices and browsers setup and available to conduct cross browser testing.
Since cross browser testing can be a bit repetitive, it’s often worth looking into automating certain tests. Some of the tools below offer automation features so that you can expedite some of these actions.
Here are six cross browser testing tools:
- Browsershots – A free service that provides screenshots of how a page looks on a variety of browsers.
- Browserstack – A leader in the industry, Browserstack offers the ability to test on real machines by inputting the URL of the page/application you’re testing.
- Browserling – A simple tool with over 80 browsers to test on.
- Browsera – Browsers tests differences in layouts across browsers and reports scripting errors.
- CrossBrowserTesting – Another leader in the space, CrossBrowserTesting has a large number of browsers to choose from, and you can even run your selenium scripts to automate actions.
- Litmus – Allows for basic screen-shots in different browsers, but mainly focuses on providing cross client testing for emails.
There are many more tools out there to choose from. These are just some of the more popular ones.
Cross browser testing is an important part of the software development lifecycle. It’s easy to skip testing across browsers with the excuse of “we don’t have time” or “I’m sure it works fine”. But you never know for sure unless you actually test. It can be pretty embarrassing to deploy a big release only to find out a major piece of functionality is broken on a certain browser or device.
Cross browser testing can take time, but when it’s done right, you’ll avoid those “fire drill” moments where the entire team is scrambling to fix a major bug isolated to one browser.