By Navjeet Shekhawat
Correct and accurate data is the most crucial part of an effective Salesforce application. The cost of mishandling the migration of data is high. But the business risk associated with incorrect data like lost revenue and lost opportunities can be enormous. In Salesforce CRM, organizations often face large and complex data migrations. Testing is a key phase in the migration process that uncovers issues before they become a costly headache. To mitigate the risks such as data corruption, missing data, loss of data, and application performance issues involved in data migration, it is important to use a thorough and effective testing strategy.
Our strategy encompasses testing by functional area before and after a migration. The following 2 lists show what we examine at both stages of the process:
First, these are the functional testing areas to consider prior to data migration:
- Make sure that all the objects, custom fields, and custom apps are set up correctly before the data migration.
- Validate that organization-wide defaults (OWD) and profiles are set up correctly in the target system.
- Validate that all the workflows, assignments, approval rules, and email templates are migrated.
- Validate that all the page layouts and mapping of page layouts to profiles are set up properly for all the record types.
- Validate that single sign-on (SSO) logins are working correctly.
- Validate that all the tabs are displaying correctly.
Next, these are the functional testing areas to consider post-migration:
- First test on a small sample of data to check whether the data mapping is implemented correctly or not.
- Validate that all the users have been associated with the correct profile.
- Validate that relationships between accounts, contacts, and opportunities have been set up correctly.
- Create a new record to check for required fields, read-only fields, and any validation rules on a particular field.
- Use sample data to test the approval processes.
- Validate that workflow scenarios are being triggered and email notifications are being sent via workflow.
- Validate that search is returning correct records.
- Validate that site pages are displaying properly.
- Check for duplicate data (i.e., duplicate contacts, accounts, and opportunities).
- Perform basic SOQL queries in the developer console to retrieve information like total number of account in a record type, number of accounts with multiple contacts, etc.
- Test the records of different objects by logging into Salesforce as different users. Compare these same records manually with the legacy system.
- Create custom reports to retrieve the data in target systems and compare with the legacy system.
- Validate that naming conventions remain the same in the target system.
- Test for broken attachments.
- Validate on records that CreatedBy, CreatedDate, LastModifiedByID, and LastModifiedDate are the same as they are in the legacy system.
- Monitor the load time carefully and raise issues to avoid bottlenecks.
- Check that the migrated dashboard and reports are running and displaying the correct records.