5 Key Areas of Software-as-a-Service (SaaS) Testing
1. Functional Testing Checklist This is the standard functional testing to validate if the app is doing what it is supposed to do.
- Conduct rigorous Manual tests as per defined test plans, keeping the end user in mind
- Conduct Exploratory tests based on existing or new test cases
- Conduct Browser compatibility testing to check performance of the application on different web browsers
- Conduct Regression testing on every release, minor upgrade, an integration or data migration.
- Automate Functional and Regression tests
- Conduct tests in target environment – whether it is your data center or the Cloud.
- Conduct reliability testing to find the total defects of the application and thus reduce the number of failures, during real time deployment.
2. Infrastructure and Security Testing The goal of this is to test the underlying infrastructure and security of the app.
- Test the security of the SaaS application for typical web application security issues such as HTTP header injection, Cross Site scripting (XSS), SQL Injection etc.
- Test security of the network where SaaS application is being deployed
- Test possible scenarios of security attacks/threats
- Test the application with respect to access privileges with the corresponding job roles (especially in a multi-tenant environment)
- Test the security, integrity & accessibility of test data (especially in a multi-tenant environment )
- Determine situations that could make the SaaS application vulnerable
- Test compliance with Payment Card Industry Data Security Standard (PCI Compliance)
- Maintain logs of security warnings, errors and requests from unreliable sources
3. Performance and Scalability Testing A critical area of SaaS apps testing, and is really the foundation of business growth.
- Conduct scalability tests to determine the capacity of the application to scale up or down as per requirements
- Conduct volume testing for your data
- Conduct availability testing for a planned period of time
- Conduct load testing under normal as well as peak load conditions in multiple environments
4. Integration and API Testing Success of SaaS apps lie in how well you have thought of scenarios where third party developers can build their own apps using your APIs, and add value to your product. So testing all the APIs for functionality, security, usability, performance and completeness of documentation is critical to make them successful.
5. Operational Testing This area is intended for the operations team whose objective is to make sure the apps are working fine, and take care of customer service & billing. Usually, there are tools that are built as part of the product which help the operational team members to monitor, track and analyze for issues. The areas to look for:
- Application, Services, App Server, Platforms (OS), Databases and Data Center Level Logs/Alerts/Warnings/Errors for functionality and performance
- Billing and Customer Support Tools, especially for integration