
High level definition of the various types of testing that will be executed by QA depending on project needs or requirements
- Functional Testing – to verify that a software application performs and functions correctly according to design specifications. Include scenarios that reflect the overall End User Experience Perspective during test execution.
- Regression Testing – a form of validation checks to ensure that existing application functionalities are unaffected by the new changes
- Sanity – minor changes
- Partial Regression – medium level risks changes
- Full Regression – high level risks changes (new features, new OS version, db, transaction flows, etc.)
- End to End / Integration Testing – validation of complete business transaction flow from beginning until the end. Very important especially for testing production issues or hotfixes
- Ad Hoc Testing – unstructured form of testing where QA Analysts would use/test the application without a formal plan – aka monkey testing.
- Performance Testing – validation on product response, loading times, maximum and minimum capacity, thresholds/breakpoints, etc.
- Automated Testing – to aid in performing repetitive testing tasks, very useful for executing regression suite
- Compatibility Testing – changes must be compatible to work with the organization’s supported devices, browsers, OS and current systems or platforms
- Security Testing – to check if the software in question is vulnerable to attacks, conforms to regulation standards, information/data are protected and maintains intended functionality
- Migration Testing – the process of testing the data transfer from one system type or format to a new platform while confirming that the intended functionality and features are unaffected, compatible or maintained. Very important for any product changes that involve system implementation, upgrade or consolidation.
- Production Testing – QA testing in production to validate the deployment and implementation of:
- Production Testing – QA testing in production to validate the deployment and implementation of:
-
-
Hotfixes
-
Maintenance Windows
- Release Deployment / UAT
-
- UAT / Beta Testing – product is tested in the “real world” by the intended end users