---
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.md) you've configured in your [staging, QA, and pre-production environments](https://docs.datadoghq.com/continuous_testing/environments.md), 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.md)
- [Simulate browser scenarios within your web application](https://docs.datadoghq.com/getting_started/synthetics/browser_test.md)
- [Test functionality within your iOS and Android applications](https://docs.datadoghq.com/mobile_app_testing.md)

You can set up [parallelization](https://docs.datadoghq.com/glossary.md?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.md?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.md?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.md) 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&fit=max&w=850 1x, https://docs.dd-static.net/images/continuous_testing/new_browser_test.84e63c8cafe62394b5c1774c2bcd0325.png?auto=format&fit=max&w=850&dpr=2 2x"
      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.md#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.md) or [Jira](https://docs.datadoghq.com/integrations/jira.md), 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.md?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.md?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&fit=max&w=850 1x, https://docs.dd-static.net/images/continuous_testing/copy_cli_command.24b4f8977a452d676f695b4ed6b8f50d.png?auto=format&fit=max&w=850&dpr=2 2x"
   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.md?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.md?product=synthetic-monitoring#test-batch) and [test runs](https://docs.datadoghq.com/glossary.md?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&fit=max&w=850 1x, https://docs.dd-static.net/images/continuous_testing/explorer_ci_batches_1.d5b0a754d072c00ed09e370ad1949c98.png?auto=format&fit=max&w=850&dpr=2 2x"
   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&fit=max&w=850 1x, https://docs.dd-static.net/images/continuous_testing/explorer_test_runs_1.c40982e878cc1ad3491a474ecb0074f6.png?auto=format&fit=max&w=850&dpr=2 2x"
   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&fit=max&w=850 1x, https://docs.dd-static.net/images/continuous_testing/explorer/search_queries.6252faee0ca8feb619a2dc0fc8100dfc.png?auto=format&fit=max&w=850&dpr=2 2x"
   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.md?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&fit=max&w=850 1x, https://docs.dd-static.net/images/continuous_testing/example_test_id.71d210246c24051ba905e9226e80f5e4.png?auto=format&fit=max&w=850&dpr=2 2x"
   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.md).

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.md).

## 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&fit=max&w=850 1x, https://docs.dd-static.net/images/continuous_testing/parallelization_estimate.afdf2324fe348163983666126f89bf76.png?auto=format&fit=max&w=850&dpr=2 2x"
   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.md#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.md)
- [Learn about Continuous Testing and CI/CD](https://docs.datadoghq.com/continuous_testing/cicd_integrations.md)
