Compatibility testing examines the compatibility of the application and the product with different computing environments. It is a part of non-functional testing. It tests the usability, reliability, and performance of the application and the product. The ISO 25010 standard defines it as a characteristic or extent to which a software system can exchange information with other systems whilst sharing the same software and hardware.
The extent to which a software product performs well while sharing a common environment and resources, without disturbing the performance of other product(s), determines its capacity for co-existence. While the extent to which it can exchange information with another system(s) and put it to use as well speaks of its interoperability. Compatibility testing is about testing whether an entire software system/product/component is compatible with the hardware platforms, operating system, database, web browsers, networks, and other software, both in terms of co-existence and interoperability.
Table of Contents:
- Two Types of Compatibility Testing
- How does Compatibility testing work?
- What are the Advantages of Compatibility Testing?
- What are the Possible Testing Defects?
- Types of Compatibility testing tools
- Conclusion
Two Types of Compatibility Testing
- Backward compatibility also called downward compatibility is when older versions of the application or software are tested for compatibility with newer hardware and software. It is relevant when some users may operate the application on old devices.
- Forward compatibility testing tests an application or software in new versions of hardware and software. It verifies if existing hardware and software perform smoothly with the newer version.
Within these two types of compatibility testing are several, more specific categories of testing. These categories are:
- Version testing – Verifies compatibility with different versions of the software.
- Browser (Cross-browser) testing – Verifies compatibility across different browsers — such as Internet Explorer, Google Chrome, Safari, and Firefox, as well as across browsers on different devices, such as laptops, Androids, tablets, and iPhones.
- Hardware testing – Verifies compatibility with various hardware configurations.
- Software testing – Verifies compatibility with other software.
- Network testing – Verifies compatibility and performance in different networks, such as 3G, 4G, and Wi-Fi.
- Device testing – Verifies compatibility with different devices, such as printers, USB port devices, Bluetooth and scanners.
- Mobile testing – Verifies compatibility with different mobile devices and their various platforms, such as iOS, and Android OS.
- OS testing – Verifies compatibility with different operating systems, such as Windows, Linux and Mac.