Shift-left testing with Salesforce DX and Provar DX
This blog was written by Ivan Harris, Chief Technology Officer at Provar. Ivan’s first book, Beginning Salesforce DX, was published in 2022.
High-performing software product teams are always learning and insatiably curious — constantly searching for new technologies, tools or methods that will help them develop products faster whilst improving quality.
I’ve spent the past ten years in the Salesforce ecosystem, mainly in ISV leadership teams creating products that are built on, or that integrate with, Salesforce for listing on Salesforce’s AppExchange enterprise marketplace. In the early days, we developed our custom applications using tools such as the Developer Console and the Force.com IDE for Eclipse. We used the Ant Migration Tool to move our applications between the environments used during the development lifecycle.
Despite the acknowledged benefits that Salesforce brought to no-code and low-code development, the pro-code experience was alien to developers of enterprise applications hosted on public cloud IaaS platforms, such as Amazon Web Services, Google Cloud Platform and Microsoft Azure. With the release of Salesforce’s Winter ’18 update in October 2017 came the step change in development productivity that Salesforce pro-code developers sought; namely, Salesforce DX (“SFDX”) became generally available. Salesforce DX introduced new technologies, tools and methods that transform how Salesforce applications are collaboratively developed and deployed.
After using Salesforce DX for a while, I wanted to go deeper with SFDX and give back to the Trailblazer community that has helped me during my Salesforce career. I wrote a book, Beginning Salesforce DX, published by Apress (and available here) which takes a developer from novice to practitioner by learning through practical examples.
That said, writing the book (which was a bucket-list item for me) took longer than expected! Six months in, I moved from the UK to Australia to take up a position with Salesforce as a Senior Program Architect. After nearly two great years working with amazing colleagues and with some of Salesforce’s largest, most complex multi-cloud customers, I needed to return to the UK.
On my return, a CTO role came up with Provar Testing, which provides Salesforce-specific end-to-end test management and test automation solutions. This was a perfect opportunity, as I knew that Salesforce’s innovation in new tools, such as Salesforce DX, Code Builder and DevOps Center, would lead to shorter, more frequent release cycles. I could see that Provar was well positioned to support this more agile, collaborative, and iterative development by adding the comprehensive testing needed throughout the development cycle. That, combined with my keen interest in software development tools, led me to join Provar in September 2022.
I could see that Provar was well positioned to support this more agile, collaborative, and iterative development by adding the comprehensive testing needed throughout the development cycle.Ivan harris
Since 2014, Provar has been known for Provar Automation, a no/low-code end-to-end test automation tool designed from the ground up for testing a business’s Salesforce instances via the user interface, APIs and integrations with other systems. We recently launched Provar Manager, a quality hub for planning, building, and executing Provar Automation test cases.
Provar has a different approach. We do the heavy lifting for our customers to ensure that Provar Automation is updated before the Salesforce preview sandboxes become available. The resilient nature of test scripts executed by Provar Automation means that customers can rapidly complete regression testing to ensure that their custom applications and customisations are working as expected with the latest Salesforce release. It also frees up testing resources to focus on higher value tasks such as creating new test scripts and performing exploratory testing.
Provar has a different approach. We do the heavy lifting for our customers to ensure that Provar Automation is updated before the Salesforce preview sandboxes become available.ivan harris
So, that’s all well and good, but what does this have to do with Salesforce DX and pro-code developers? One of the lesser-known Provar features is ProvarDX, a Visual Studio Code extension providing a Salesforce DX NPM plug-in that also adds provar as a new namespace to the Salesforce Command Line Interface (CLI) and quick actions to Visual Studio Code.
The plug-in enables developers to execute Provar test cases using ProvarDX CLI commands from Visual Studio Code’s integrated terminal. This allows end-to-end testing to shift-left to earlier in the development lifecycle. In the Salesforce Developers Blog “Month of Testing: Why We Test”,” the IBM System Science Institute asserts that bugs discovered in production cost nearly seven times more than those found in the testing phase of the application lifecycle — indicating significant benefits to shifting-left. Imagine that a developer has completed unit testing, and before committing their code, they could execute all of the end-to-end tests that their code contributes to. They can! Provar Manager can be used to determine which Test Plans or Test Suites need to be run, and the developer can execute them using Provar Automation via ProvarDX commands. This not only enables regression bugs to be discovered sooner but they can also be fixed before the developer moves on to develop a different feature.
At Provar, we are all-in with Salesforce and committed to helping our customers improve their release agility, drive down system defects, and increase innovation. Our Provar Manager and Provar Automation solutions meet users at every stage of their software development lifecycle — including business analysts creating acceptance tests, QA managers orchestrating testing activities, administrators undertaking declarative programming, manual testers documenting test cases, and automation testers building end-to-end automated tests.
ProvarDX serves the needs of pro-code developers performing imperative programming, allowing shift-left testing to improve quality, whilst reducing costs. With our integration with Salesforce DevOps Center and Salesforce DX, no-code, low-code and pro-code development are all catered for. Our Salesforce DevOps Center integration will be the subject of a future post.
Want to learn more about how Provar can improve your organization’s Salesforce automated testing? Contact our team today!