Getting started with the Automated Test Framework

  • Release version: Washingtondc
  • Updated February 1, 2024
  • 3 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Getting Started with the Automated Test Framework

    The Automated Test Framework (ATF) is designed to facilitate application testing within ServiceNow. It allows users to create, run, and manage tests effectively, ensuring that applications function correctly before deployment. The framework offers a beginner tutorial to help users familiarize themselves with its basic features and encourages exploration of more advanced functionalities as confidence grows.

    Show full answer Show less

    Key Features

    • Test Step Configuration Categories: ATF provides various categories for testing, including:
      • Service Catalog in Service Portal: Conduct end-to-end tests for catalog items.
      • Application Navigator: Verify navigation features and application menus.
      • Custom UI: Create simple user action tests without scripting.
      • Form Testing: Test forms by validating field values and UI actions.
      • REST: Create and send Inbound REST requests to verify responses.
      • Server Operations: Perform unit tests and test scripts using JavaScript.
    • Output Variables: Use output variables from test steps as inputs in subsequent steps to enhance testing workflows.
    • Custom Test Step Configurations: Create custom test steps that run on the server, allowing for tailored testing scenarios.
    • Data Preservation: ATF automatically manages data created during tests, rolling back changes after execution.
    • Test Suites: Execute multiple tests in an organized manner, allowing for hierarchical structuring and scheduling.

    Key Outcomes

    By utilizing the Automated Test Framework, ServiceNow customers can streamline their application testing processes, ensuring consistent performance and reliability. This leads to improved application quality, reduced deployment risks, and enhanced user satisfaction. Additionally, the support for domain separation allows for better data management and access control within the testing environment.

    If you are new to the Automated Test Framework, read this overview to learn what the framework can do. Next, follow the tutorial to create and run a test that uses the most basic of ATF features. After you feel comfortable with the basics, explore more advanced features provided by the ATF.

    ATF features provide flexibility in how you test your instance.

    Test step configuration categories

    Category Description
    Service Catalog in Service Portal Perform end-to-end testing for a catalog item in the Service Portal.
    • Open a record producer, catalog item, or order guide.
    • Set variable values and catalog item quantity.
    • Validate variable values, states, price, and items included in an order guide.
    • Navigate in an order guide.
    • Open and toggle catalog items in an order guide.
    • Add an item or an order guide to a shopping cart.
    • Order a catalog item or an order guide.
    • Submit a record producer.
    Application Navigator Create tests to check navigation features.
    • Verify that application menus are listed in the left navigation bar.
    • Verify that application modules are listed in the left navigation bar.
    • Navigate to a module as if a user clicked the module in the left navigation bar.
    Custom UI Create simple tests that mimic user actions with no scripting.
    • Set component values.
    • Assert that specified text is or is not on a page.
    • Validate component values.
    • Click components.
    • Validate the states of components (read-only or not read-only).
    Form Create tests of forms.
    • Open a new form or an existing record.
    • Set field values.
    • Validate field values or field states (such as mandatory, not mandatory, read only, not read only, visible, and not visible).
    • Validate whether a UI action is visible.
    • Click a button on a modal page.
    • Click a UI action.
    • Submit a form.
    Service Catalog Perform end-to-end testing for a catalog item.
    • Open a catalog item or a record producer.
    • Search for a catalog item.
    • Set variable values and catalog item quantity.
    • Validate variable values, states, and price.
    • Add an item to a shopping cart.
    • Order a catalog item.
    • Submit a record producer.
    Forms in Service Portal Create tests of forms in the Service Portal.
    • Open a form.
    • Set field values.
    • Validate field values or field states (such as mandatory, not mandatory, read only, not read only, visible, and not visible).
    • Validate whether a UI action is visible.
    • Click a UI action.
    • Submit a form.
    REST Create and send an Inbound REST request and verify the response.
    • Test any REST endpoint on the instance.
    • Use a REST request to create records, as well as retrieve, update, or delete records created in a previous test step or that already existed on the instance.
    • Verify the response status code, response headers, response time, and response payload.
    Server Perform more complex operations, including the following:
    • Perform unit tests using JavaScript, including tests using the Jasmine test framework.
    • Test business rules, script includes, and other scripts.
    • Create tests that operate on data that you define.

    Output variables

    Many test steps return output variables whose values you can use as inputs to a later step. For example, you can use output variables to accomplish the following tasks:
    • Perform a server-side assert on a record that you previously inserted.
    • Create a record as one user, and then reopen its form as a different user.

    Custom test step configurations

    In addition to the steps built into the Automated Test Framework, you can create custom test step configurations. These custom steps can take input variables and return output variables that you define.
    Note:
    You can only define custom test steps that run on the server. The Automated Test Framework does not support creating custom step configurations that run on the browser.

    Data preservation

    The Automated Test Framework automatically tracks and deletes any data created by running tests, and automatically rolls back changes after testing.

    Test suites

    Test suites enable you to execute a batch of tests in a specified order. In addition, test suites can be hierarchical, with suites nested within other suites. You can associate test suites with schedules that determine when the system runs the test suites.