“Install Pega Deployment Manager!” they said. “Execution of all your PegaUnit test cases with just a click of a button!” they said. And yes, they’re absolutely right… I would love that. But…
Sometimes you just can’t instantly turn water into wine. Installing and configuring a CICD pipeline takes some preparation and time. And even though pega has already made it fairly easy, you’d have to setup and configure an environment, configure the deployment manager, test your deployment scripts and so on. In the meantime PegaUnit testsets are growing and growing and require manual execution, still creating longer feedback loops than necessary.
Sounds familiar? I ran into the problem where developers were creating excellent PegaUnit test cases, but they were hardly ever executed. Which is an utter waste of early feedback. Unittests need supply a stream of feedback almost all the time. That’s why I created a small component… the ‘TestCaseFailGuardrailWarning’.
The ‘TestCaseFailGuardrailWarning’ component consists of 2 rules: a guardrail warning activity and a custom Guardrail message. Whenever a rule under development is saved, this custom guardrail warning is triggered and executes any (enabled) PegaUnit test cases related to the rule under development. Do all test cases pass? Then nothing happens. Do one or more test cases fail? Then a custom guardrail warning message is displayed showing: “One or more related test cases did not pass upon saving this rule. Consider reviewing and updating these test cases as part of current development.”
It's a simple, pragmatic short feedback loop solution until you have your Pega Deployment Manager set up and running. The ‘TestCaseFailGuardrailWarning’ can be installed like any other Pega component, is very light weight and can be enabled/disabled as you please.
Install the ‘TestCaseFailGuardrailWarning’ using the ‘Manage component’ option in your application definition (DEV application only!) and enable it. And you're done!
Well almost....now you have time to install Pega Deployment Manager...