Continuous Test Orchestration And Execution Platform Online

Perform automated and live-interactive testing on 3000+ real desktop and mobile devices online.

Basics Of Compatibility Testing

Dileep Marway

Posted On: September 13, 2022

view count4962 Views

Read time5 Min Read

What is compatibility testing?

Compatibility testing is checking if the software is capable of running on different hardware, operating systems (OS), applications, network environments, or mobile devices.

It is a key part of a QA strategy and if this has not been thought of in your approach I would recommend that you do some research and make it a key part of your approach.

Given that there are a large number of devices/browsers it is key that you have a strategic plan to ensure that compatibility testing is factored into your testing strategy. For me, compatibility testing is a form of not discriminating against devices/browsers that a particular user may use.

Why is compatibility testing important?

Far too many times I have used websites on my iPhone where I cannot buy the product that I want to buy, or I’m on my MacBook and a website cuts off the right-hand side on the Safari browser.

I’m sure we have all been frustrated in these ways before and it is an annoyance which hinders the user flow. As a customer I’m willing to spend more on a product if the website user experience aids the user flow.

Key reason why you should factor this in:

  1. Ensures complete customer satisfaction
  2. Provides service across multiple platforms
  3. Identifies bugs during the development process and earlier than customers!
  4. Avoids customer complaints.
  5. Ensures a competitive advantage

Types of compatibility tests

  1. Hardware
  2. Operating system (OS) – such as Windows, Unix, MacOS
  3. Software – e.g. ensuring that MS word is compatible with MS outlook
  4. Network
  5. Browser – for instance: Firefox, Google Chrome, Internet Explorer
  6. Devices
  7. Mobile – android and iOS
  8. Version – e.g. Windows 7, Windows 7 SP1

Key terms mentioned around compatibility:

  1. Backwards compatibility – this is where you are testing to see if your software is compatible with previous versions.
  2. Forwards compatibility – this is where you are testing to see if you software is compatible with versions which will be coming in the future.

Steps to fit in compatibility testing in your testing approach

  1. Define a set of environments or platforms the application is expected to work on.
  2. Gather customer data on how your customers use your products.
  3. Understand the expected behaviour under different configurations.
  4. Setup your environment and get the particular device permutations ready.
  5. Report any bugs that are found.

Step 2 for me is super important and it is one where I do not feel enough people build into their plan.

To gather customer data on how your customers use your products I would recommend that you set-up google analytics or an alternative type of statistical analysis system.

For example when we had a website product, this data allowed us to know what browsers and OS versions our customers were using. Using this we could then tailor our test cases to ensure that the product functionality met the users needs.

Another game changer with this data is that it removes bias, many a time I have assumed that a latest device will be the most used by a user base, though when I received this data I actually learned that users generally used the latest device which was from a year before.

What are the common compatibility issues found

  1. Changes in the users interface (UI)
  2. Change in font size
  3. Alignment issues
  4. Change in CSS style and color
  5. Scroll bar related issues
  6. Content or label overlapping
  7. Broken tables or frames

Why you should use a compatibility testing tool?

The biggest concern around compatibility testing is that there are so many different test cases which need to be tested constantly, and if we are making key architectural or code changes the ability to release at pace becomes near enough impossible.

So how can you build compatibility testing into your test approach and still release at pace?

The answer to this has been to use a compatibility testing tool – now there are lots on the market, though my recommendation is to do your research and take your time to pick the right tool.

Key considerations for me when selecting a compatibility tool include:

  1. Price
  2. Usability of the tool
  3. Device availability when you need to test on it
  4. Availability of older/never devices and different browsers
  5. The ability to incorporate the tool with your automation pack

My personal recommendation is LambdaTest, primarily because:

  1. It supports more than 3000+ browsers and operating systems.
  2. It allows live interactive browser compatibility testing.
  3. It is cost effective and has great customer service.
  4. The devices are readily available.
  5. Allows integration with an automation framework.

Incorporating a compatibility tool with your automation framework is a game changer and this is a key consideration when you are at a stage where you are confident that you understand why you are testing for compatibility.

My closing statement is that if you do not have compatibility testing built into your testing approach it can be a game changer to your users and I would recommend that you add it as soon as possible!

Author Profile Author Profile Author Profile

Author’s Profile

Dileep Marway

Head of Quality Assurance, Agile Consultant, Quality Assurance Manager and the author of "Agile Quality: A Practical Approach" book. Owns extensive expertise in Quality Compliance, Design, and Risk management. Leading Total Quality wing to wing: compliance, processes, risk management, and product quality. The founder and owner of the “www.agilequalitymadeeasy.com/” blog (25K followers). A platform that I use for teaching and coaching others, sharing my knowledge with people, and guiding them towards success while giving them the inspiration and tools to discover their own path

Blogs: 9



linkedintwitter

Test your websites, web-apps or mobile apps seamlessly with LambdaTest.

  • Selenium, Cypress, Playwright & Puppeteer Testing
  • Real Devices Cloud
  • Native App Testing
  • Appium Testing
  • Live Interactive Testing
  • Smart Visual UI Testing
Book a Demo