Testing software application to ensure bug free quality product is the most profound commandment to live by for the entire IT industry. It sounds simple and straightforward, be assured it is not. A strict testing strategy has to be in place for delivering efficient and cost affective automation solutions for customers.
Testing of Salesforce application is no exemption. A thorough testing strategy should involve testing in different environments Sandbox, User Acceptance testing (UAT) and Production.
What is Salesforce testing?
Salesforce testing is a process to validate the configurations and customizations done in an org meet the agreed upon business requirements with the primary aim of delivering an efficient error free product to the customers.
Testing allows for early identification of errors in the software development and release cycle when it is easy to fix. This validation is the confirmation that the released product can support the customer’s business processes.
What are the levels of Salesforce testing?
1. Unit testing
2. System testing
3. User acceptance testing
4. Production testing
5. Regression testing
Testing best practices:
Collate information for the testing:
A comprehensive list of a prioritized test case scenarios document has to be prepared that covers all possible business case scenarios and technical exceptions. The document should also include the expected result of each scenario and action. Accordingly the test data has to be created for testing the defined scenarios.
Executing the tests:
The testing document scenarios have to be executed and the results have to be documented for testing audit. Any failure scenario or action in the test case has to be escalated to the responsible team and retested after rectification. While testing code it is recommended that the testing be done in isolation to ensure that the code interacts only with the relevant data for the tests.
Use valid user profiles for testing:
The user level configurations and permission sets associated with the profiles commands which systems and what level of visibility the user is entitled to. So it is highly recommended that the testing be done with respective valid user profiles and check for consistency with the business processes.
Test both Negative and Positive paths
The system testing and UAT testing should be done for both positive and negative flows of every test case scenario. Every test result should comply with recorded expected outcome for the same with zero deviation.