Octopus Deploy testing: run automated tests as a deployment step
Green deployments do not always mean green outcomes. Add Testery as a step in your Octopus Deploy process to run functional and end-to-end tests on each artifact, then gate promotion to production on the results. No rewrites, using the tests and frameworks you already have.
> Deploy web-app 2.14.0 to Test
✓ Package deployed successfully
⏻ Step: Testery - Create Test Run
→ 642 tests across 24 runners · smoke + regression
✓ 640 passed ↻ 2 flaky, passed on retry · 2m 48s
⏻ Tests passed. Promotion to Production unblocked.
Run your tests inside the deployment process
Octopus Deploy orchestrates your deployments, but it is not a test runner. Adding the Testery - Create Test Run step lets you execute functional and end-to-end tests on the artifact you just deployed, before it is promoted. If the artifacts are red, you find out in the pipeline, not in production at the worst possible time.
A test step that gates promotion
Deploy the artifact, run the tests against it, and let the result decide whether the release moves forward.
Deploy the artifact
Your normal Octopus process deploys the build to a Test or Staging environment, exactly as it does today.
Run the tests on Testery
The Testery step kicks off your suite against the freshly deployed environment and waits for the run to complete.
Pass promotes, fail blocks
Passing tests let the release promote through your lifecycle. A failure fails the deployment and stops the bad artifact cold.
Add the Testery - Create Test Run step
Four steps from your existing process to a gated, tested deployment.
- 1
Upload your test artifacts to Testery
Point Testery at the test suite you already have, in the repo you already use. No rewrites, no new framework to learn.
- 2
Add the Testery step to your process
In your Octopus project, open Deployments, Process, Add Step, then search for "testery" and install the Testery - Create Test Run step from the community library.
- 3
Configure the step
Set your Testery token, project name, and environment. Optionally scope the run with include tags, a build ID, and a git reference.
- 4
Gate the promotion
Enable wait-for-results and fail-on-failure so a failed run fails the deployment and blocks promotion through your lifecycle.
Good to know: Testery ships four community step templates for Octopus Deploy: Create Test Run, Create Environment, Delete Environment, and Report Deployment. You can install them in-process, or import the JSON from Library, Step templates, Import.
Configure the step
A handful of fields wire the step to your Testery project and the environment being deployed.
#{Octopus.Environment.Name} so the names stay in sync as the release moves through your lifecycle.smoke on the way to a Test environment and full regression before Production.#{each buildInfo in Octopus.Deployment.PackageBuildInformation}#{buildInfo.VcsCommitNumber}#{/each}Gate promotion to production on green tests
Turn the step into an automated quality gate, so only tested artifacts move forward.
- Enable wait-for-results so the deployment waits for the run to finish before continuing.
- Enable fail-on-failure so any failing test fails the step, the deployment, and the promotion.
- Use run conditions to scope the step to the environments where you want the gate to apply.
- Promote with confidence: a green run is a fact your lifecycle can act on, not a guess.
Fast runs, real visibility
Parallel, without the plumbing
Testery runs your suite across managed cloud runners, 2-4x faster, with no Selenium grids or test containers to babysit.
Flaky tests handled
Detect, quarantine, and intelligently retry flaky tests so an intermittent failure does not block an otherwise green release.
Results where you work
Pass and fail output streams into the Octopus task log, with full per-test reports, history, and trends in the Testery dashboard.
Keep your tests. We run them.
Run the frameworks you already use, in the repo you already have. No rewrites, no walled garden.
Trusted on large, complex suites
Testery is the best way to run our large, complex test suites.

Making the case to your team? See the business impact of testing in your Octopus pipeline: cost, speed, and release predictability.
See the business caseOctopus Deploy testing, answered
Can Octopus Deploy run automated tests?
Octopus Deploy orchestrates deployments rather than executing tests itself, but you can run automated tests directly in the deployment process by adding a test step. The Testery - Create Test Run step, installed from the Octopus community library, triggers your functional or end-to-end suite against the artifact you just deployed, waits for results, and can fail the deployment if tests fail, so testing becomes a native part of your pipeline.
How do I add a test automation step to my Octopus deployment process?
In the Octopus Web Portal, open your project, then Deployments, Process, Add Step, and search for "Testery - Create Test Run" to install it from the community library. Then set your Testery API token, project name, and environment (use #{Octopus.Environment.Name} to keep names in sync), and optionally add include tags, a build ID, and a git reference.
How do I stop a release from promoting to production until tests pass?
Enable wait-for-results and fail-on-failure on the Testery - Create Test Run step. The deployment waits for the run to finish, and if any test fails the step fails, which fails the deployment and blocks promotion through your Octopus lifecycle. When the tests pass, the release is free to promote to the next environment, giving you an automated quality gate before production.
Which test frameworks work with Octopus Deploy and Testery?
Testery runs your existing tests with no rewrites. Supported frameworks include Playwright, Cypress, WebdriverIO, Nightwatch.js, Cucumber, SpecFlow, PyTest, NUnit, and TestNG, covering functional, end-to-end, API, and regression testing. Because Testery runs the suite on managed cloud runners, you do not have to build or maintain Selenium grids, headless browsers, or test containers yourself.
Where do the test results show up after the deployment runs?
Pass and fail output is streamed into the Octopus deployment task log, so you see results in the same place as the rest of the deployment (switch the log level to Verbose for full detail). Complete per-test results, artifacts, history, and trend reporting are available in the Testery dashboard for deeper triage.
What do I set for the Git Reference and Build ID?
Set Git Reference to the commit of the test repository you want to run. You can pull it from package build information using #{each buildInfo in Octopus.Deployment.PackageBuildInformation}#{buildInfo.VcsCommitNumber}#{/each}. The Build ID is a unique identifier from your build server or Octopus that ties the run back to a specific build, so your test runs stay traceable to the exact artifact being deployed.
Do I need to keep my Testery API token secret in Octopus?
Yes. Get the token from Settings, Integrations in Testery and store it as a sensitive Octopus variable so it is encrypted in the database and masked in task logs, then reference that variable in the step rather than pasting the raw value. This keeps the credential out of plain text while still letting the step authenticate to your Testery account.
Test every artifact before it ships.
Create a free Testery account, install the step, and run your first gated deployment in minutes.