Using automated smoke test suites to reduce regression testing effort
Use the Pega built-in automated testing capabilities for optimized and effective regression testing of your Pega applications.
You can use PegaUnit testing to create automated, headless unit tests that run quickly to ensure the quality of your application at a unit level.
For more information on creating PegaUnit test cases and suites, see the following articles.
Use Pega scenario testing to create automated functional scenario tests that run in any browser, to ensure the quality of your application from end to end.
For more information on creating Pega scenario test cases and suites, see Overview of scenario testing features.
With either of these frameworks, you can create test suites, which are composed of test cases. You can use test suites to group test cases that cater to different requirements for testing your applications, including:
- Test cases belonging to a specific feature (feature-based testing)
- Test cases to be run on different environments (environment-specific testing)
- Test cases related to performance (performance testing)
- Test cases for high level smoke testing (smoke testing)
- Test cases for regression testing in one or more areas (regression testing)
You can use these test suites in CI/CD pipelines for various applications across stages in multiple environments. Run your PegaUnit tests and Pega Scenario test tasks using Deployment Manager to configure these test suites in the pipeline.
For more information, see the following articles:
- How to maintain a test application for storing your test cases and related artifacts of an actual Pega application
- Managing test cases separately in Deployment Manager
Observe the following guidelines for maintaining test suites so that you use effective testing during Pega software upgrades:
- Create different suites and customize the suites for different use case requirements.
- Configure multiple steps in the CI/CD pipeline to execute different types of test suites instead of bundling all your test cases into a single test suite.
- Use a modular approach by using suites inside suites, a useful feature offered by PegaUnit testing.
- Ensure that each test case is independent by making use of the setup and cleanup facility provided at the test case level.
- If you need to cover end-to-end scenarios using PegaUnit testing, create all the necessary unit tests (with dependencies) and group them into a test suite. Use the setup and cleanup facility at the test suite level to manage all the test data for the entire suite.
- Use proper naming conventions and helpful, accurate descriptions for each test suite.
- Use the disable test case feature to temporarily bypass any known failures instead of removing them from the test suites.
- Update the smoke and regression test suites regularly, based on changes or new additions to your application's logic.
- Create PegaUnit test suites to monitor performance, using the following guidelines:
- Identify performance-intensive test cases and group them within a test suite.
- Configure each test case to fail when the performance validation fails.
- Define an overall maximum allowed time at the test suite level and configure the test suite to fail when the performance validation fails.
- Monitor the time taken by a test suite before an upgrade and adjust the benchmarks accordingly.
- Configure the test suites to run in the upgraded environment so that you can observe the deviations and analyze the gaps.
See Pega Test Automation Features, Best Practices to understand the various testing tools that are offered in Pega Platform for different types of testing and monitoring of your application's health throughout the application development life cycle.