---
title: Getting Started with Continuous Testing
description: >-
  Automate end-to-end testing with Synthetic tests in CI/CD pipelines to
  accelerate application development and deployment.
breadcrumbs: Docs > Getting Started > Getting Started with Continuous Testing
---

# Getting Started with Continuous Testing

## Overview{% #overview %}

Continuous Testing enables you to automatically run and monitor the same [Synthetic tests](https://docs.datadoghq.com/synthetics/) you've configured in your [staging, QA, and pre-production environments](https://docs.datadoghq.com/continuous_testing/environments/), which proactively alert your team and block your pipeline deployments when code changes cause test failures.

Your Continuous Testing tests can:

- [Launch API requests on your systems](https://docs.datadoghq.com/getting_started/synthetics/api_test/)
- [Simulate browser scenarios within your web application](https://docs.datadoghq.com/getting_started/synthetics/browser_test/)
- [Test functionality within your iOS and Android applications](https://docs.datadoghq.com/mobile_app_testing/)

You can set up [parallelization](https://docs.datadoghq.com/glossary/?product=synthetic-monitoring#parallelization), which allows you to execute multiple tests in your CI/CD pipelines simultaneously rather than sequentially to help speed up your building, testing, and deployment processes. Once your tests run, examine test results and CI batches in the [Synthetic Monitoring & Testing Results Explorer](https://docs.datadoghq.com/synthetics/explorer?track=synbatch).

To improve your developer workflow with Continuous Testing, you can use the [`datadog-ci` NPM package](https://docs.datadoghq.com/continuous_testing/cicd_integrations/configuration/?tab=npm) to run tests directly in your CI pipeline.

Continuous Testing accelerates your organization's application development by automating end-to-end testing across the entire software lifecycle. You can run tests in local and staging environments, parallelize test runs, and integrate with CI providers.

## Prerequisites{% #prerequisites %}

If you haven't already, create a [Datadog account](https://datadoghq.com).

## Create a Continuous Testing test{% #create-a-continuous-testing-test %}

To set up a Continuous Testing test, first create a Synthetic test in Datadog. In this example, create a [browser test](https://docs.datadoghq.com/getting_started/synthetics/browser_test/) on the site `https://www.shopist.io`, a test e-commerce web application.

Browser tests simulate a user's journey through your web application beginning at your **Starting URL**. Ensuring your **Starting URL** is a resource in your staging environment makes it easier to test changes before moving them into production.

### Configure your test details{% #configure-your-test-details %}

1. Navigate to [**Digital Experience** > **Synthetic Monitoring & Testing** > **New Test**](https://app.datadoghq.com/synthetics/explorer?query=%40type%3Aresult%20-%40result.result.unhealthy%3Atrue&index=%2A&track=synthetics&viz=stream&from_ts=1713544430419&to_ts=1713548030419&live=true).

1. In the top right corner, click **New Test** > **Browser Test**.

   {% image
      source="https://docs.dd-static.net/images/continuous_testing/new_browser_test.84e63c8cafe62394b5c1774c2bcd0325.png?auto=format"
      alt="new_browser_test" /%}

1. Define your browser test:

   - Add the URL of the website you want to monitor into the Starting URL field. For this example, enter `https://www.shopist.io`.
   - Select **Advanced Options** to set custom request options, certificates, authentication credentials, and more. In this example, no specific advanced option is needed.
   - Name your test and set a Team Tag such as **team-checkout**. Tags allow you to keep your test suite organized and find tests you're interested in through the Synthetic Monitoring & Testing Results Explorer.
   - Choose the browsers and devices to test.

1. Continue [filling out your test details and your recording like you normally would](https://docs.datadoghq.com/getting_started/synthetics/browser_test/#create-a-browser-test).

## Integrate with a CI provider or collaboration tool{% #integrate-with-a-ci-provider-or-collaboration-tool %}

Accelerate your application development by combining testing and troubleshooting in Continuous Testing, streamlining your workflows, and minimizing context switching.

To integrate with a CI provider or a collaboration tool like [Slack](https://docs.datadoghq.com/integrations/slack/) or [Jira](https://docs.datadoghq.com/integrations/jira/), see the respective documentation:

- [github actions](https://docs.datadoghq.com/continuous_testing/cicd_integrations/github_actions/)
- [gitlab](https://docs.datadoghq.com/continuous_testing/cicd_integrations/gitlab/)
- [jenkins](https://docs.datadoghq.com/continuous_testing/cicd_integrations/jenkins/)
- [circleci orb](https://docs.datadoghq.com/continuous_testing/cicd_integrations/circleci_orb/)
- [azure devops extension](https://docs.datadoghq.com/continuous_testing/cicd_integrations/azure_devops_extension/)
- [bitrise upload-tests step](https://docs.datadoghq.com/continuous_testing/cicd_integrations/bitrise_upload/)
- [bitrise run-tests step](https://docs.datadoghq.com/continuous_testing/cicd_integrations/bitrise_run/)

## Run your Continuous Testing tests{% #run-your-continuous-testing-tests %}

To improve your development workflow, you can use `datadog-ci` in your CLI as a CI environment to configure your test.

### Running tests in the CLI{% #running-tests-in-the-cli %}

Extend your use of Continuous Testing by using the [`datadog-ci` NPM package](https://docs.datadoghq.com/continuous_testing/cicd_integrations/configuration/?tab=npm). `datadog-ci` lets you execute commands from within your CI/CD scripts to test your application before deployment. You can automate blocking and rolling back changes when tests fail. Read the [`datadog-ci` Configuration page for installation and setup instructions](https://docs.datadoghq.com/continuous_testing/cicd_integrations/configuration/?tab=npm#install-the-package).

You can retrieve the command for running a specific test using `datadog-ci` from the test detail page:

{% image
   source="https://docs.dd-static.net/images/continuous_testing/copy_cli_command.24b4f8977a452d676f695b4ed6b8f50d.png?auto=format"
   alt="Copy the CLI command for running a test from the test detail page" /%}

1. Navigate to the [**Tests** page](https://app.datadoghq.com/synthetics/tests).
1. Select a test.
1. Look for the command in the **CI/CD Execution** section.
1. Copy and paste the command into your command line.

For more information about running the Synthetics command and using reporters, see the [Configuration documentation](https://docs.datadoghq.com/continuous_testing/cicd_integrations/configuration/?tab=npm#reporters).

## Examine results in the Synthetic Monitoring & Testing Results Explorer{% #examine-results-in-the-synthetic-monitoring--testing-results-explorer %}

The Synthetic Monitoring & Testing Results Explorer allows you to create visualizations and filter [CI batches](https://docs.datadoghq.com/glossary/?product=synthetic-monitoring#test-batch) and [test runs](https://docs.datadoghq.com/glossary/?product=synthetic-monitoring#test-run) for your Continuous Testing tests.

Navigate to [**Digital Experience** > **Synthetic Monitoring & Testing** > **New Test**](https://app.datadoghq.com/synthetics/explorer?query=%40type%3Aresult%20-%40result.result.unhealthy%3Atrue&index=%2A&track=synthetics&viz=stream&from_ts=1713544430419&to_ts=1713548030419&live=true), then select **CI Batches** or **Test Runs** to see results from your CI batches or test runs in the Explorer. Select a CI batch or test from the list to get a more detailed view of the result.

{% tab title="CI Batches" %}

{% image
   source="https://docs.dd-static.net/images/continuous_testing/explorer_ci_batches_1.d5b0a754d072c00ed09e370ad1949c98.png?auto=format"
   alt="Search and manage your CI batches in the Synthetic Monitoring & Testing Results Explorer" /%}

{% /tab %}

{% tab title="Test Runs" %}

{% image
   source="https://docs.dd-static.net/images/continuous_testing/explorer_test_runs_1.c40982e878cc1ad3491a474ecb0074f6.png?auto=format"
   alt="Search and manage your test runs in the Synthetic Monitoring & Testing Results Explorer" /%}

{% /tab %}

### Create a search query{% #create-a-search-query %}

Explore one of the following out-of-the-box search queries to start filtering your CI batches or test runs.

{% image
   source="https://docs.dd-static.net/images/continuous_testing/explorer/search_queries.6252faee0ca8feb619a2dc0fc8100dfc.png?auto=format"
   alt="Out-of-the-box search queries in the Synthetic Monitoring & Testing Results Explorer" /%}

Optionally, you can create a query to [search your test runs](https://docs.datadoghq.com/continuous_testing/explorer/?tab=testruns#create-a-search-query). Using the browser test you created above, locate the Test ID and create a search query using the common test run facets.

To find the ID of your browser test:

{% image
   source="https://docs.dd-static.net/images/continuous_testing/example_test_id.71d210246c24051ba905e9226e80f5e4.png?auto=format"
   alt="The browser test ID highlighted in the Properties section of a test run" /%}

1. Navigate to the [**Tests** page](https://app.datadoghq.com/synthetics/tests).
1. Select a test.
1. Look for the Test ID in the **Properties** section.

For more information about using facets in your search query, see [Search Test Runs](https://docs.datadoghq.com/continuous_testing/explorer/search_runs/).

To export your view of the Synthetic Monitoring & Testing Results Explorer, click **> Views**. For more information, see [Saved Views](https://docs.datadoghq.com/continuous_testing/explorer/saved_views/).

## Set parallelization preferences{% #set-parallelization-preferences %}

By default, Synthetic tests are not parallelized. Parallelization allows you to run multiple tests in your CI/CD pipelines simultaneously. If you want to parallelize your tests, you can use the **Estimate Parallelization** calculator to determine your needs.

{% image
   source="https://docs.dd-static.net/images/continuous_testing/parallelization_estimate.afdf2324fe348163983666126f89bf76.png?auto=format"
   alt="parallelization_estimate" /%}

Navigate to [**Digital Experience** > **Synthetic Monitoring & Testing** > **Settings**](https://app.datadoghq.com/synthetics/settings/continuous-testing) to locate the calculator.

For instance, if you have 24 tests per CI batch, each taking 2 minutes to complete, and your target is for all tests to be completed within 4 minutes, you need to run 12 tests in parallel.

$$\text"estimated parallelization" = {\text"24 tests per CI batch"* \text"2 minute duration"} / \text"4 minute expected duration in your CI pipeline"$$

Once you're done estimating your parallelization, input the number of test runs you want to execute at the same time in the Parallelization modal. Then, click **Save Selection**.

For more information, see the [Parallelization documentation](https://docs.datadoghq.com/continuous_testing/settings/#parallelization).

## Further Reading{% #further-reading %}

- [Introduction to Synthetic Tests in a CI/CD Pipeline](https://learn.datadoghq.com/courses/synthetic-tests-ci-cd-pipeline)
- [Best practices for continuous testing with Datadog](https://www.datadoghq.com/blog/best-practices-datadog-continuous-testing/)
- [Use Datadog Continuous Testing to release with confidence](https://www.datadoghq.com/blog/release-confidently-with-datadog-continuous-testing/)
- [Learn about local and staging environments](https://docs.datadoghq.com/continuous_testing/environments)
- [Learn about Continuous Testing and CI/CD](https://docs.datadoghq.com/continuous_testing/cicd_integrations)
