Portability Testing is the type of Software Testing which is carried out to determine the degree of ease or difficulty to which a software application can be effectively and efficiently transferred from one hardware, software or environment to another one.
The results of portability testing are measurements of how easily the software component or application will be integrated into the environment and then these results will be compared to the non-functional requirement of portability of the software system. The measurement is based on the comparison of the cost to adapt the software to the new environment to the cost of redevelopment.
Objective of Portability Testing:
The objective of the portability testing is:
- To determine whether a system can be ported to each of the environmental characteristics.
- To determine whether the look and feel of the application with respect to user interface and functional features are similar to various operating systems and browsers.
- To determine whether the system is ready for release on various browsers and environments.
- To find the defects that are missed by the unit and integration testing.
Portability Testing Attributes:
Adaptability is defined as the capacity of the software application to adopt to a particular environment without any effort. Common communication standards between multiple systems help in enhancing the adaptability of the system as a whole.
Installability is defined as the capacity of software application to get installed to the desired environment without using extra resources. Installability is performed on a software that is to be installed in a target environment.
Replaceability is defined as the capacity of software application to replace other software in a particular environment. The software application that is replacing the previous software application must produce the same results on all target environments.
Co-existence is defined as the capacity of software application to work with other software application on the system without disturbing each other and sharing the same resource. Specially this testing is used in large systems which include multiple subsystems as part of it.
Portability Testing Checklists:
- Test whether the application can fulfill the portability requirements.
- Determine the user interface and functional features of the application in the various browsers.
- Review the defects to the development team so that the defects can be fixed.
- Portability testing help to identify defects that were not detected during unit and integration testing.
Advantages of Portability Testing:
- It helps in identification of the dependencies between two applications.
- It is especially used in large systems which have several subsystems as part of it.
- It is performed when the user of application uses multiple environments.
- Defects that are missed during unit and integration testing are detected during this testing.
- Performance and responsiveness of an application is tested across various browsers and various operating systems.
- User interface and functional features of the application on various browsers and various operating systems are checked using this testing.
- It helps in determining whether the functionality of the application is as expected on various operating systems and various browsers.
Disadvantages of Portability Testing:
- It is not performed when a time constraint is applicable on the software testing cycle.
- A lot of budget is required for portability testing for various operating systems and various browsers.
- Support for maintenance of the setup hardware configuration is needed.
- Portability testing is a repetitive testing process.
- Portability testing in a multi-user environment is very tricky.
- A lot of storage space is required for portability testing.
Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.
- Load Testing Basics, Tools & Practices in Software Testing
- Software Engineering | Differences between Sanity Testing and Smoke Testing
- Software Engineering | Comparison between Regression Testing and Re-Testing
- Difference between Software Testing and Embedded Testing
- Basis Path Testing in Software Testing
- Object Oriented Testing in Software Testing
- Sanity Testing | Software Testing
- Software Testing | Scenario Testing
- Software Testing | Manual Testing
- Gray Box Testing | Software Testing
- Stress Testing | Software Testing
- Alpha Testing | Software Testing
- Sandwich Testing | Software Testing
- Software Testing | Reliability Testing
- Software Testing | Scalability Testing
- Performance Testing | Software Testing
- Software Testing | Static Testing
- Software Testing | Non-functional Testing
- Unit Testing | Software Testing
- Smoke Testing | Software Testing