Vercel
Run Endtest automated tests automatically when Vercel deployments are created.
Overview
The Endtest Vercel integration lets you run Endtest automated tests automatically when a Vercel deployment is created.
When a deployment is triggered in Vercel, Endtest can start a test execution and report the result back to Vercel as a deployment check.
This is useful when you want every Preview or Production deployment to be validated by an Endtest test suite before your team treats the deployment as ready.
What the integration does
The integration can:
- Detect new Vercel deployments.
- Run an Endtest API request for the selected Vercel project.
- Pass the Vercel deployment URL into your Endtest API request.
- Show an Endtest deployment check inside Vercel.
- Mark the check as passed or failed based on the Endtest result.
Requirements
Before configuring the integration, make sure you have:
- An Endtest account.
- A Vercel account.
- A Vercel project connected to the integration.
- An Endtest test suite or test case that can be executed through the Endtest API.
Step 1: Create the Endtest API request
In Endtest, open the test suite or test case that you want to run from Vercel.
Generate or copy the Endtest API request for that execution.
The API request should be the same request you would normally use to start an Endtest execution from a CI/CD system.
For example, it may look similar to this:
curl -X POST "https://app.endtest.io/api.php" \
-d "appId=YOUR_APP_ID" \
-d "appCode=YOUR_APP_CODE" \
-d "action=startTestSuite" \
-d "testSuite=YOUR_TEST_SUITE_ID"Use the API request generated by your own Endtest account. Do not use the placeholder values above.
Step 2: Use the Vercel deployment URL in your test
If your Endtest test should run against the newly deployed Vercel URL, use one of these placeholders inside the API request:
| Placeholder | Description |
|---|---|
{{VERCEL_DEPLOYMENT_URL}} | Full deployment URL, including https:// |
{{VERCEL_DEPLOYMENT_HOST}} | Deployment host only, without https:// |
{{VERCEL_DEPLOYMENT_URL_ENCODED}} | URL-encoded deployment URL, useful inside query parameters |
For example:
curl -X POST "https://app.endtest.io/api.php" \
-d "appId=YOUR_APP_ID" \
-d "appCode=YOUR_APP_CODE" \
-d "action=startTestSuite" \
-d "testSuite=YOUR_TEST_SUITE_ID" \
-d "baseUrl={{VERCEL_DEPLOYMENT_URL}}"The exact parameter name depends on how your Endtest API request is configured.
Step 3: Install the Endtest integration in Vercel
In Vercel, open the Endtest integration page and click Connect Account or Add Integration.
During the installation flow, Vercel will ask you to authorize Endtest.
After authorization, Vercel will open the Endtest configuration page.
If you are not already signed in to Endtest, sign in first and then open the configuration page again.
Step 4: Configure the Vercel project
On the Endtest Vercel configuration page:
- Select the Vercel project.
- Paste the Endtest API request.
- Choose which deployment types should trigger Endtest.
- Save the configuration.
The available options are:
| Option | Description |
|---|---|
| Preview deployments | Run Endtest for Vercel Preview deployments. |
| Production deployments | Run Endtest for Vercel Production deployments. |
| Blocking check | Make the Endtest deployment check blocking in Vercel. |
| Enabled | Enable or disable this project configuration. |
For most teams, enabling both Preview deployments and Production deployments is a good starting point.
Use Blocking check only if you want Vercel to treat the Endtest check as required before the deployment is considered fully valid.
Step 5: Trigger a Vercel deployment
After saving the configuration, trigger a deployment in Vercel.
You can do this by:
- Pushing a commit to the connected Git repository.
- Creating a Preview deployment.
- Redeploying an existing deployment.
When Vercel creates the deployment, the Endtest integration will create an Endtest deployment check.
When the deployment becomes ready, Endtest will start the configured test execution.
Step 6: Review the result
After the Endtest execution finishes, the Vercel deployment check is updated.
Possible outcomes:
| Result | Meaning |
|---|---|
| Passed | The Endtest execution finished successfully. |
| Failed | The Endtest execution failed, had errors, or could not be completed. |
| Running | Endtest is still executing the test. |
You can open the Endtest results page from the execution result to review screenshots, logs, videos, and step-level details.
Recommended setup
A common setup is:
- Run tests on every Preview deployment.
- Run a smaller smoke suite on every Production deployment.
- Use the Vercel deployment URL placeholder so the test runs against the exact deployment.
- Enable blocking checks only for stable smoke tests.
- Keep longer regression suites non-blocking or trigger them separately.
Example API request with a deployment URL
This example shows how a Vercel deployment URL can be passed into an Endtest execution:
curl -X POST "https://app.endtest.io/api.php" \
-d "appId=YOUR_APP_ID" \
-d "appCode=YOUR_APP_CODE" \
-d "action=startTestSuite" \
-d "testSuite=YOUR_TEST_SUITE_ID" \
-d "variables[baseUrl]={{VERCEL_DEPLOYMENT_URL}}"Your actual request may use a different action, test suite identifier, or variable format.
Troubleshooting
The Endtest check does not appear in Vercel
Make sure:
- The Vercel project is selected in the Endtest configuration page.
- The configuration is enabled.
- The deployment type is enabled. For example, Preview deployments require Preview deployments to be checked.
- The Endtest integration is installed for the correct Vercel account or team.
- A new deployment was created after the integration was configured.
The check appears but stays running
The Endtest execution may still be running.
Open Endtest and check the execution results for that test suite or test case.
If the execution does not start, verify that the API request is valid.
The check fails
Open the Endtest result page and review:
- Failed steps.
- Screenshots.
- Browser logs.
- Network logs, if enabled.
- The deployment URL used by the test.
A failed check usually means either the deployed app has an issue, or the automated test needs to be updated for that deployment.
The wrong environment is tested
Make sure your API request uses:
{{VERCEL_DEPLOYMENT_URL}}instead of a fixed staging or production URL.
If the API request contains a hardcoded URL, Endtest will run against that URL instead of the newly created Vercel deployment.
Preview deployments are not triggering Endtest
Open the Endtest Vercel configuration page and make sure Preview deployments is checked for that project.
Production deployments are not triggering Endtest
Open the Endtest Vercel configuration page and make sure Production deployments is checked for that project.
Security notes
The integration uses Vercel OAuth to connect your Vercel account to Endtest.
Your Endtest API credentials should be kept inside the Endtest configuration page and should not be committed to your source code repository.
The Vercel deployment URL placeholders do not contain secrets. They are replaced at runtime with the deployment URL for the current Vercel deployment.
Removing the integration
To remove the integration:
- Open Vercel.
- Go to the Endtest integration installation.
- Remove or disconnect the integration.
- The related Endtest Vercel configuration will stop being used for future deployments.
You can also disable a specific project from the Endtest Vercel configuration page by unchecking Enabled and saving the project settings.
Summary
The Endtest Vercel integration connects Vercel deployments with Endtest automated testing.
Once configured, each selected Vercel deployment can automatically trigger an Endtest execution and display the result directly in Vercel as a deployment check.