> You are reading the Docusign Developer Documentation. For clean Markdown of any page, append .md to the page URL.
>
> Documentation indexes by section:
> - APIs and SDKs: https://docusign.docs.buildwithfern.com/docs/llms.txt
> - Platform 101: https://docusign.docs.buildwithfern.com/platform/llms.txt
> - Extension Apps: https://docusign.docs.buildwithfern.com/extension-apps/llms.txt
> - Docusign CLI: https://docusign.docs.buildwithfern.com/docusign-cli/llms.txt
>
> Authentication (OAuth, JWT Grant, M2M): https://docusign.docs.buildwithfern.com/platform/auth
> Webhooks and Connect: https://docusign.docs.buildwithfern.com/platform/webhooks
>
> OpenAPI specifications: https://docusign.docs.buildwithfern.com/openapi.json
> MCP server: https://docusign.docs.buildwithfern.com/_mcp/server

# Integration tests

> Learn how to verify that an extension app can obtain authorization, send requests to a third-party API, and process the responses.

The [Developer Console](/extension-apps/developer-console-overview) provides two types of integration tests:

* [Connection tests](/extension-apps/build-an-extension-app/test/integration-tests#run-a-connection-test): Verify that the extension app can obtain [authorization](/extension-apps/build-an-extension-app/it-infrastructure/authorization) from the external API service or identity provider. This test also replicates the customer experience of configuring a connection after [installing the extension app](https://support.docusign.com/s/document-item?bundleId=ous1698169987748\&topicId=ctg1698170340729.html) in the App Center.
* [Extension tests](/extension-apps/build-an-extension-app/test/integration-tests#run-an-extension-test): Verify that the extension app can send requests to external API endpoints or [API proxy](/extension-apps/build-an-extension-app/it-infrastructure/api-proxy) endpoints and process the responses. The extension tests available for an extension app depend on which [extensions](/extension-apps/extension-apps-101/supported-extensions) the app uses.

> **Note**
>
> See [Test prerequisites](/extension-apps/build-an-extension-app/test#test-prerequisites) for information about tasks you must complete before you can run these tests.

The tests will run against the external service environment (development, test, or production) configured when the extension app was [registered](/extension-apps/build-an-extension-app/register). See [Test against different environments](/extension-apps/build-an-extension-app/test#test-against-different-environments) for information about switching environments.

## Run a connection test

This test obtains [authorization](/extension-apps/build-an-extension-app/it-infrastructure/authorization) from the external API service or identity provider. It uses the [connection settings](/extension-apps/build-an-extension-app/register/use-form/integration-details#update-connection-settings) supplied when registering the extension app using a form or the [connection object](/extension-apps/extension-app-reference/app-manifest-reference/connection) properties supplied in the extension app manifest. Running this test requires you to supply login credentials for the authorization provider.

To run a connection test:

1. Log in to the [Developer Console](https://devconsole.docusign.com).
2. On the **My Extension Apps** page, locate the row for the extension app you want to test.
3. Select the app to open the **App Overview**.
4. In the left navigation, select **App Testing**.

   ![Connection test figure 1](/_fern-files/_img/920d703352c1bd2e495a69f8b16a252cf67ed998228d59085bd00c4e3eaa95d5.webp)
5. If a banner displays the message **App is not installed to your developer account**, as shown above, select **Install app**.

   After installation, the banner displays the message **App is installed to your developer account**.

   > **Note**
   >
   > If you previously installed the extension app and have [updated the extension app registration](/extension-apps/build-an-extension-app/update-registration) since then, the updates are automatically applied to your installed version. You do not need to reinstall after updating the registration.

   ![Connection test figure 2](/_fern-files/_img/7e132f82a27ad39fab1aa1cdf8a1de2ec90b01d707883fa5f824e30fccdf9676.webp)
6. Select **Run Test** in the **Connection** row to display the test page:

   ![Connection test figure 3](/_fern-files/_img/b1b63bee5f35dd2fc4c1194ec9332375f34626288dc072b56e5e8d5fb1899bbb.webp)
7. Select **Run Test**.
8. When prompted, supply your credentials for the authorization provider.
9. The test executes and test results are displayed.

   ![Connection test figure 4](/_fern-files/_img/106b1bafd4f232ea49790a0563a8a489b1c9c8e54b88ac16d011a4c4c7fc9d6a.webp)

   If the test fails, the results include an error message. See [Connection test errors](/extension-apps/troubleshooting#connection-test-errors) for troubleshooting tips.

## Run an extension test

This test launches a request to the external API endpoint or [API proxy](/extension-apps/build-an-extension-app/it-infrastructure/api-proxy) endpoint configured for an [action](/extension-apps/extension-apps-101/concepts/actions) or [capability](/extension-apps/extension-apps-101/concepts/capabilities). It uses the value from the [Params URI](/extension-apps/build-an-extension-app/register/use-form/integration-details#update-extension-and-action-settings) setting in the form-based extension app registration process or the extension app manifest [actions.params.uri](/extension-apps/extension-app-reference/app-manifest-reference/action) property. The test confirms that the endpoint is reachable and that the response is in the format Docusign expects. Extension tests use the authorization obtained from a [connection test](/extension-apps/build-an-extension-app/test/integration-tests#run-a-connection-test).

The Developer Console extension tests include all actions and capabilities that are implemented in the extension app registration. Extension tests are executed from the Docusign platform directly to external endpoints. Running extension tests is an important step in extension app development. However, it is also important to test all of the extension app’s actions and capabilities from the [extension point](/extension-apps/extension-apps-101/concepts/extensions-and-extension-points#extension-points), such as eSignature, Agreement Builder, or Agreement Manager. See [Functional tests](/extension-apps/build-an-extension-app/test/functional-tests) for more information about testing from extension points.

> **Note**
>
> Before you can run an extension test, you must first complete a successful [connection test](/extension-apps/build-an-extension-app/test/integration-tests#run-a-connection-test). If you previously installed the extension app and have [updated the extension app registration](/extension-apps/build-an-extension-app/update-registration) since then, the updates are automatically applied to your installed version. You do not need to reinstall after updating the registration.

To run an extension test:

1. Log in to the [Developer Console](https://devconsole.docusign.com).
2. On the **My Extension Apps** page, locate the row for the extension app you want to test.
3. Select the app to open the **App Overview**.
4. In the left navigation, select **App Testing**.

   ![Extension test figure 1](/_fern-files/_img/b463f1820a6f4d35ab2008060597525bca6e8042155f9d12c6fce4966e2a48ea.webp)
5. Locate the **Extension** row for the action or capability you want to test.
6. Select **Run Test** in the appropriate row to display the test page.

   ![Extension test figure 2](/_fern-files/_img/88d8531382312785349ae588d393c3618610637a8cf4e15aeb6610be6be840a1.webp)
7. Confirm that the endpoint URL shown is correct. This value is populated from the [Params URI](/extension-apps/build-an-extension-app/register/use-form/integration-details#update-extension-and-action-settings) setting in the form-based extension app registration process or the [params.uri](/extension-apps/extension-app-reference/app-manifest-reference/action) property in your extension app manifest and it cannot be edited on this test screen. If it's not correct, [update the extension app registration](/extension-apps/build-an-extension-app/update-registration).
8. Supply request body property values to include with the request. The action contract has details about these properties. You can access action contract details for each extension from the [Extension contracts](/extension-apps/extension-app-reference/extension-contracts) page.
9. Select **Run Test**.
10. The test results and response from the external system are displayed.

    ![Extension test result](/_fern-files/_img/4179ca434fda7f5924930018b880137adae1307db2edf8de5aa5d820e55c704d.webp)

If the test fails, the results include an error message. See [Extension test errors](/extension-apps/troubleshooting#extension-test-errors) for troubleshooting tips.

## Next steps

* Learn how to [troubleshoot errors](/extension-apps/troubleshooting).
* Get details about the structure of the [extension app manifest](/extension-apps/extension-app-reference/app-manifest-reference).
* Find out more about [functional tests](/extension-apps/build-an-extension-app/test/functional-tests).
* See how to use the [App Center preview](/extension-apps/build-an-extension-app/test/app-center-preview).