Testing applications in AEMC
Summarize
Summary of Testing applications in AEMC
Testing applications in the Application Engine Management Console (AEMC) ensures that changes are viable before deploying to a production instance. Testing is performed in a non-production environment to validate the application’s stability and functionality through automated tests triggered during deployment.
Show less
Testing Process
An administrator initiates testing by approving the deployment request, which transitions the application into the Testing state. If enabled, ServiceNow Automated Test Framework (ATF) tests automatically run to verify the application. If testing fails, the deployment request should be rejected to prevent faulty applications from reaching production.
Automated Tests During Deployment
When deploying or installing an application in a test environment, two key automated jobs run:
- Application Deployment Test Suite: A suite of ATF tests that logs scan results to the Test Results table. This suite requires enabling the system properties
snatf.runner.enabledandsnatf.schedule.enabled. Without these, only the instance scan runs. - Scoped App Definitions Instance Scan: A diagnostic scan that checks all tables extending the Task [task] table to identify health and best practice issues in a non-production instance.
Viewing Test Results
Test results are accessible in the Deployment Environment Results tab within the deployment request record. Results are organized into three sections:
- ATF Results: Includes test suite name, test URL, success/failure counts, and overall errors.
- Instance Scan Results: Shows scan suite name, scan URL, finding counts, and detailed results.
- Results (JSON): Contains raw JSON data of test outcomes and errors, also available in the Notes related list for detailed troubleshooting.
Key Benefits for ServiceNow Customers
- Ensures application changes are validated before production deployment.
- Automates critical testing processes, reducing manual effort and risk.
- Provides detailed diagnostic information to quickly identify and resolve issues.
- Helps maintain best practices and instance health through automated scans.
Testing an application helps to ensure the viability of the changes on the production instance. Learn about how testing works in AEMC and the different kinds of tests that automatically run during the deployment process.
Testing an application
Before you publish a submitted application, test it in a non-production instance. To begin testing, an admin must open the deployment request and select Approve. The pipeline record is read and determines the next state for the request.
The goal of testing the application is to ensure the viability of the production instance. When the app has transitioned to the Testing state, ServiceNow Automated Test Framework tests run if you have enabled the appropriate properties.
If the application doesn't pass testing, then you reject the deployment request.
Deploying to a test environment
- Application Deployment Test Suite
- Scoped App Definitions instance scan
These tests can be useful to the administrator for diagnosing issues before an app is deployed. For more information about what goes on during an application deployment, see Pipelines and Deployments workflow.
| Job | Description |
|---|---|
| Application Deployment Test Suite | A set of Automated Test Framework (ATF) tests. The suite consists of a single test called Log. When the test is run, scan results are logged to the Test Results [sys_atf_test_result] table. Note: The
following two system properties must be enabled to run the Application Deployment Test Suite:
|
| Scoped App Definitions instance scan | Instance scans aid in diagnosing health issues on a non-production instance, and are useful for addressing best practices. For more information, see Instance Scan. The instance scan checks all tables in the app that extend Task [task]. |
The admin can view the results of the scans for troubleshooting purposes by selecting the Deployment Environment Results tab in the deployment request.
- ATF Results
- Test suite name
- Test URL
- Success and failure counts
- Overall error count
- Instance Scan Results
- Scan suite name
- Scan URL
- Finding count for the scan
- Results (JSON) includes unformatted JSON code of the ATF and instance scan results, as well as any errors identified during the scans. This JSON can also be found in the Notes related list.