Using third-party testing tools with your Pega application

From PegaWiki
Using third party testing tools with your Pega application / This is the approved revision of this page, as well as being the most recent.
Jump to navigation Jump to search

Using third-party testing tools with your Pega application

Description An overview of the testing tools that can be used with your Pega application
Version as of 8.5
Application Pega Platform
Capability/Industry Area DevOps

Pega provides various built-in testing tools that can be leveraged to test our Pega applications. However, Pega applications can also be tested with various third-party testing tools. Pega does not have any specific preferred tools or vendors, but below are some suggestions based on how customers have approached their testing needs.

Functional Testing

For functional testing of your Pega applications, consider the following approaches:

Unit Testing

For unit testing Pega Applications, Pega Units are the best approach.

UI Testing

Pega provides a Test ID attribute for unique identification of UI elements that enables you to write dependable automated tests against any Pega application. To perform UI-based functional tests and end-to-end scenario tests, and to verify that end-to-end cases work as expected, Pega provides the Pega Scenario testing built-in tool. You can also use third party Selenium and Cucumber tools to automate those tests. Pega provides a Selenium-based UI test framework and sample UI tests in its Selenium Starter Kit, which you can use to build up a test automation suite for your Pega application. These test frameworks are built with maintenance and best practices in mind.

Mobile Testing

To automate mobile-specific tests for a Pega Mobile Application, you can use the Expresso Framework for Android UI. For more information, see the Mobile testing with Espresso framework Pega Collaboration Centre article.

API or Services Testing

To test your APIs or Services, you can use REST-assured, Citrus, POSTMAN or SoapUI tools. These tests can even be automated using the Karate Cucumber Framework as preferable.

Non-Functional Testing

Accessibility Testing

Pega provides accessibility features to individual access groups. Pega recommends using Pega Accessibility Inspector tool for testing accessibility compliance as you configure your application. Other widely available tools such as aXe-core from Deque Systems, pa11y, or can be inserted into your build process. Testing the UI with a popular screen reader combo such as JAWS [latest] and Chrome, Chromium Edge, or Firefox is also recommended. Voiceover and iOS is by far the most common combo for testing accessibility on mobile devices.

Security testing

To test your Pega applications for any security vulnerabilities, both Static Analysis Security Testing (SAST) and Dynamic Analysis Security Testing (DAST) need to be considered. You can use the Pega Rule Security Analyzer (Pega RSA) for SAST, which searches through non-auto generated rules to find specific JavaScript or SQL coding patterns that may indicate a security vulnerability. You can also use other available tools, such as IBM AppScan, Burp Suite, and OWASP ZAP tools for Security vulnerability assessment.

Performance testing

For testing application performance, tools such as Apache JMeter, BlazeMeter, HP LoadRunner can be helpful. For monitoring the performance in a production system, Pega Predictive Diagnostic Cloud (PDC) should help. PDC can monitor alerts, exceptions and other metrics that matter from the application perspective. If you would like to monitor other aspects of the environment, such as the app or database server and other parts of the deployment stack, there are many solutions out there such as AppDynamics, DataDog, NewRelic, and so on. Depending on your particular deployment setup, for example cloud or on premises, as well as other variables, you should be able to decide which one to use.