Tips and tricks Best practice guides, FAQ & more
If your business is using Salesforce, odds are that the platform is customized to fit specific needs. That’s not a bad thing. But just as system updates require testing, so do customizations. It’s a time-consuming, tedious task that can take weeks if you’re working in a large business with a complex IT landscape.
If your Salesforce application isn’t properly tested your business is exposed to risk. And if something breaks, the consequences can be severe.
That’s where regression testing comes in.
What to expect in this article
Regression testing in Salesforce makes sure that whenever there is an update, configuration or deployment in Salesforce, existing functionality has not broken. It's essentially a test of your entire system or the highest risk areas of Salesforce.
This process can be done manually, but it is incredibly time-consuming and so businesses use test automation tools to automate regression testing.
Yes, there is automated testing in Salesforce. However, it's a notoriously difficult system to automate due to its heavy DOM structures. There are, however, workarounds for automating testing in Salesforce. We'll get into that in this post.
Regression testing helps ensure that code doesn’t break when your system is updated, customizations are added, or new integrations are introduced to business workflows.
Related reading: What is Regression Testing?
Think of it as sending your car in for routine maintenance. If you don’t do it regularly, you’re likely to miss underlying issues. It’s a nuisance getting it done, but it’s how to keep your car healthy.
If you don’t regularly regression test your system you’re likely to miss critical bugs that will cause you expensive headaches down the road.
It’s a pain to do, especially if it’s done manually. But when it’s done the right way by substituting the repetitive tasks with automation, the process can move faster and increase the quality of your overall system.
In the next section, we explain the best practices that businesses can follow to make sure that their regression testing is secure, fast, and cost-efficient.
As with every new business endeavor, you should come prepared with a strategy. You will have to take in certain considerations before starting:
Your approach could likely differ depending on the interface of Salesforce that you’re working with - lightning or classic.
Salesforce lightning is a newer version of the interface that makes it easier and faster to use the system. The classic system still exists and is used by many large businesses. However, Salesforce intend to move all customers to their new system in the future.
Testing in lightning and classic vary in difficulty. For example, scripting a test on the classic version is easier because the elements are easier to define. On lightning, scripting is more complicated because the CSS and XPATHS have sticky dynamic paths.
If you haven’t built a test suite for Salesforce before, a starting point is to select them based on the following criteria:
As your system changes, your tests will change too. Keeping your regression tests up to date is part of the process.
If your test cases are scripted, it will inevitably take more work to maintain and it will require specialist resources with development experience.
If your resources are limited, and you’re being pressured to achieve more with less, it is beneficial to choose a tool that lets you set up and edit tests easily.
While it’s easy to skip your regression tests, they should be run often.
Typically, a regression test is carried out whenever new functionality (like customization), or a new element has been added to your system. For a larger business, this can feel impossible to do without supplementing your testing strategy with automation.
If your business processes operate outside of the Salesforce ecosystem (it likely does), you will want to make sure that you’re testing the integrations too.
If you’re choosing an automation tool rather than building your own automation framework, you want to check that it caters to additional technologies.
Read our blog post how frequently should you run your regression tests?
While every organization has unique needs, there are particular features that you should look for in a regression testing tool to make sure that you get the most out of your testing strategy.
Want to learn more about getting started with Salesforce automation? Read our factsheet on how to find a test automation tool for agile and reliable test automation.