Building and running automated test suites

  • Release version: Yokohama
  • Updated January 30, 2025
  • 2 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 Building and running automated test suites

    Automated Test Framework (ATF) in ServiceNow enables you to create and run test suites—collections of tests and nested test suites—to verify applications or related features. Test suites can be organized hierarchically, where parent suites contain child suites or individual tests. This structure allows comprehensive and ordered testing of complex scenarios.

    Show full answer Show less

    Key Features

    • Test Suite Hierarchies: Build multi-level test suite hierarchies where a suite can be both a parent and a child, enabling modular and scalable test organization.
    • Scheduling: Schedule test suites to run automatically based on defined schedule records. Scheduling requires an active Scheduled Client Test Runner with matching browser conditions. Note that only test suites (not individual tests) can be scheduled.
    • Dynamic Test Inclusion via Filters: Use filters to automate adding tests to a suite based on matching criteria. This reduces manual maintenance and keeps test suites up to date.
    • Copying Test Suites: Duplicate entire test suites, including nested tests and child suites, to accelerate test creation and modification.
    • Running Tests: Run test suites manually in non-production instances or trigger scheduled runs. You can also execute scheduled suites immediately via script for automation purposes.
    • Re-running Failed Tests: Option to re-run only failed tests within a suite, saving time by avoiding full suite re-execution.
    • Notifications: Configure watchlists on test suite run records to notify users via email upon completion of test execution.

    Practical Considerations

    • Ensure a Scheduled Client Test Runner is active and configured properly for UI-based test steps when running scheduled suites.
    • Scheduled tests cannot run on locked, powered-down machines or without the appropriate browser session already open.
    • Use filters to maintain test suites dynamically, reducing manual effort for test designers.

    Next Steps for ServiceNow Customers

    • Create automated test suites by grouping relevant tests and child suites to reflect application features or workflows.
    • Leverage scheduling to run test suites during off-hours or as part of continuous integration pipelines.
    • Utilize filtering and copying features to efficiently manage and scale your test suites as your instance evolves.
    • Monitor test suite runs and configure email notifications to stay informed of results and failures.

    Run a group of tests in a specific order to test an application or a group of related features.

    A test suite can contain both individual tests and other test suites. A test suite that contains another test suite is called a parent, and the test suite contained within the parent is called a child. While a test suite can have both individual tests and test suites as children, tests cannot have other tests as children. Tests can only contain test steps.

    Benefits

    Grouping tests into test suites offers these benefits.
    • Allows testers to run every test in a test suite with one action.
    • Allows testers to run all child test suites in a parent test suite.
    • Allows testers to see test results for every test in a test suite.
    • Allows test designers and testers to schedule when to run test suites.
    • Allows test designers and testers to schedule starting client test runners to support test runs.

    Hierarchies

    Automated Test Framework supports building a multi-level hierarchies where a test suite can be both a parent and child. For example, this figure illustrates Test Suite 1 as the parent at the top of the hierarchy. Test Suite 1.3 is a child of Test Suite 1 and also a parent of Test Suite 1.3.1 and Test Suite 1.3.2.

    Figure 1. Example of Test Suite Hierarchy
    Diagram of example test suite hierarchy

    Schedules

    To schedule a test suite, you need three components:
    • a test suite record
    • a schedule record specifying when you want the system to run the test suite
    • a scheduled suite run record that associates the test suite to run with the schedule for running it
    With this model, you can associate a schedule with many different test suites, and vice versa.
    Note:
    You can schedule only test suites, not individual tests. Scheduled tests will run only if there is an open Scheduled Client Test Runner page matching the scheduled suite's browser conditions. Scheduled tests cannot run on a machine that is locked, powered down, or does not already have the browser open.

    The watchlist on the test suite run record also allows you to specify users to receive an email when the system finishes executing the test suite run.

    If the test suite contains one or more form steps (steps involving a user interface), you must ensure that a scheduled client test runner is actively running in a browser when the schedule triggers the suite run.

    Note:
    See Browser recommendations and requirements for recommendations and requirements for running the client test runner.

    For step-by-step instructions on how to schedule a test suite, see Schedule an automated test suite.

    Filters

    Automate the creation of test suites by using a filter to dynamically add tests to a test suite when they match the filter conditions. Reduce the time that your test designers spend manually creating and maintaining test suites.