1. Roles and Responsibilities of Salesforce QA on a Project
QA in Salesforce has a really broad definition. A QA engineer is involved in the whole development process of a new product and can have the following roles: Business Analyst, QA of course and even an Administrator! Salesforce provides the ability for us to configure its environments without programming skills. It makes QAs autonomous team members.
And what about responsibilities? It is not a secret that a magician named QA has no less responsibility than his/her colleagues. Let's name some of them:
Participating in meetings with team members and customers, collaborating with developers and management team.
Performing risk analysis, work estimations, preparing test-related documentation to plan the working process, identifying tools and technologies that will be used for testing purposes.
Analyzing requirements and preparing a list of questions if the requirements are incomplete, ambiguous and contradictory to perform effective testing.
Creating check-lists, test-cases, automated tests if needed and executing them to find bugs. Also test environment and test data must be prepared before executing test-cases.
Analysis of test results to provide feedback and suggestions on how to improve the quality of the product in future.
And a lot of additional stuff that you can not even imagine.
2. Specific Features of SF Testing
Let's go to the introduction that is provided by Salesforce Trailhead to learn how they explain what their product has by default:
Salesforce comes with a lot of standard functionality, or out-of-the-box products and features that you can use to run your business.
With the platform, you can customize and build whatever it is that makes your company unique. And when you have a business application that's unique to you, everyone is more successful.
So, it means that Salesforce has standard and custom functionality. Depending on this, QA should plan his/her work accordingly.
There is no need to test basic, out-of-the-box features, as this work has already been done by their internal specialists in the quality sphere. As a result, a Salesforce QA should concentrate on UI/screen changes, business logic preservation, integration with other enterprise applications and services, and any other issues that may arise as a result of customization.
3. Salesforce Testing Challenges
Here are some common QA challenges that immediately come to mind:
Testing can depend on the Salesforce UI mode (there are Classic and Lightning modes)
Since Salesforce doesn't have fixed element IDs, it's difficult to use them in automated test scenarios
After major Salesforce releases, some UI test-cases can not be reproducible.
Small differences between SQL and SOQL can perplex a novice tester about how to correctly write a required query
Sometimes a lot of steps are needed to set up an environment for the correct testing (e.g. users with different Roles and Profiles can have absolutely various layouts, so you need several users to speed up the testing process)
For good and fast testing, advanced specialists need to know how to use the Developer Console (writing queries, running batches, reviewing code and viewing logs will really help) but this stuff can be sophisticated for beginners
If you are also a Salesforce QA engineer reading this article, share with us the challenges that annoy you most in the comments.
4. What Educational Materials Help
There are 2 great options to become more familiar with the Salesforce platform: trailhead.salesforce.com and Salesforce-related forums where experienced professionals can help you with any questions. In general, the Salesforce learning ecosystem is simply amazing. Everything is in one place and with a single interpretation without someone else's subjective opinion.
5. Useful Tools for Salesforce Testing
The main difficulties that a SF QA engineer can encounter are:
complex integrations can not be tested using GUI only
lack of available physical devices for testing purposes
enormous number of steps when working with data
Testing is not as simple as it seems at first sight, this activity contains a lot of deep complex work that makes products significantly better. So, QAs need additional tools that can make their life easier.
Additional QA Tools
6. Personal Instructions
Sometimes the work of QA specialists remains in the shadow, thus it may be considered optional in the development process. But we are 100% sure that quality is an essential part of producing great applications that can make your experience much better.
And now let's summarize: if you see a great product with a proper level of quality, then be sure that awesome and rigorous QA work was done for it.
If you have additional questions on how to set it up for your business, feel free to reach out to us for a free consultation
Feeling like teaming up with us at Twistellar? We are excited too!Whether you'd like to customize your org, build a bespoke application or integrate a third-party tool, Twistellar is ready to help you.