Table of Contents
Start your free trial.
Start your free trial.
Start your free trial.




Table of Contents
Executive Summary
If you are a DevOps or platform engineer running Kubernetes, you have probably felt this: your CI pipelines are getting heavier, test logic keeps accumulating in places it should not, and you are slowly becoming the person every team comes to when tests break.
You did not sign up to own test infrastructure. You signed up to build and maintain reliable delivery pipelines. Somewhere along the way, tests moved in and never left.
What you are dealing with is a test orchestration gap. CI/CD pipelines were never designed to fill it, and the more you try to make them, the worse the problem gets.
The test orchestration problem that landed in your lap
It started small. A retry wrapper here. An environment-specific flag there. A Slack notification when a flaky suite fails. Harmless, until it was not.
Most platform engineers working on Kubernetes clusters today are carrying weight their job description never mentioned: test orchestration logic embedded inside CI pipelines. Retry logic. Environment variable handling. Failure routing. Test scheduling. Suite management. All of it in YAML that nobody fully understands, nobody wants to own, and everyone depends on.
DevOps teams in this situation describe their legacy CI tooling the same way: powerful enough to hold everything together, but requiring constant maintenance just to stay that way. Elasticity without the complexity tax is what they want. What they have is the opposite.
Pipelines become brittle. Tests become the excuse for failed deployments. The platform team becomes the bottleneck, fielding questions about failures that have nothing to do with pipeline execution and everything to do with the test logic buried inside it.
Teams stuck here tend to describe the same wishlist: visibility into what is failing and where, scheduling that does not depend on commits, integrations that do not require custom glue to maintain. What they are describing, without necessarily naming it, is test orchestration. And the reason they do not have it is that there was no dedicated place for it to live.
CI/CD and test orchestration are not the same thing
CI/CD pipelines move code through stages: build, test, deploy. They are sequential, event-driven at the pipeline level, and built for delivery velocity.
Test orchestration is a different job. It decides when and where tests run, not just triggers them from a commit. It manages execution across multiple clusters and environments. It routes failures with context, not just exit codes. It schedules tests independently of deployments, aggregates results across tools and runs, and scales execution without saturating CI machines.
When you force CI/CD to do this work, you get two failure modes.
Pipeline sprawl
Every team bakes their test logic into their own pipeline definition. You end up with hundreds of pipeline files, each with its own retry logic, each inconsistent with the others, none sharing visibility.
Environment mismatch
CI runners sit outside your Kubernetes clusters. Tests pass in CI and fail in staging or production because the environments do not match. The pipeline reports green. The deployment breaks.
CI/CD tools execute pipelines. Test frameworks execute tests. Neither one orchestrates testing as a system. That gap is why this work keeps landing on your plate.
What a dedicated test orchestration layer actually does
Test orchestration needs its own infrastructure layer. Not a CI plugin, not a framework extension. A dedicated system for owning test execution across your containerized environment.
Tests run inside your clusters. Rather than CI runners sitting adjacent to your infrastructure, a test orchestration platform runs tests as native Kubernetes jobs and pods inside your real clusters, the same ones your applications run in. The test sees the same networking, the same service discovery, the same secrets. Environment drift stops being a factor.
Test logic lives outside your pipelines. Instead of embedding test definitions in CI YAML, a test orchestration platform keeps a version-controlled test catalog that is separate from pipeline code, deployable on its own, triggerable from any pipeline, event, or schedule. For teams moving toward GitOps, this is the natural model: test workflows versioned alongside application code, synced automatically, no manual pipeline edits required.
Results come back as signal, not noise. Every run, across every tool and every cluster, flows into one view. Not a log file to scroll through. Not a separate dashboard per tool. When something fails, there is enough context to act on it, not just an exit code.
Scaling uses the infrastructure you already have. Elastic test execution means Kubernetes pods, not more CI runners or shared machines with resource contention. For large engineering organizations running monorepos, this is the difference between actionable test output and 200,000 lines of log per pipeline step.
Why Testkube is the only platform built for this
Testkube was not adapted from a CI/CD tool. It was not a test framework that added scheduling. It was built specifically to solve the test orchestration gap for Kubernetes environments, and it is the only platform that does.
It runs inside your clusters, not next to them. Testkube executes tests as native Kubernetes jobs. No external test cloud, no VM access, no root privileges. Tests run where your applications run. Security teams that have blocked previous testing tools because of VM-level or Docker daemon access requirements find this a different conversation: no elevated privileges, full namespace isolation, open source agent with inspectable code.
It works with whatever tools your teams already use. k6, Playwright, Cypress, Postman, JMeter, custom scripts. Testkube orchestrates them without requiring migration or rewrites. Teams keep their testing tools. Testkube provides the layer above them.
Your pipelines trigger it. They do not own it. Test workflows are Kubernetes CRDs, version-controlled with your application code, synced via GitOps. GitHub Actions, GitLab CI, Argo CD, API: any of them can trigger Testkube. None of them need to carry the test logic.
It runs on infrastructure you are already paying for. No per-minute cloud testing fees, no vendor-controlled execution environment, no data leaving your clusters. Costs are predictable because the execution layer is yours.
What changes when test orchestration has its own layer
When platform teams separate test orchestration from CI/CD pipelines, three things stop being problems.
The pipeline stops accumulating complexity it was not designed for. Test logic has a home, a version history, and a clear owner, and that owner is not whoever committed last to the pipeline YAML.
Failures become diagnosable. When tests run inside your clusters with unified reporting, the question shifts from "did the pipeline fail?" to "why did this specific test fail in this specific environment?" That is a question you can actually answer.
The platform team stops being the bottleneck. Not because they have delegated the problem, but because the problem has a proper architecture.
Moving test logic out of your pipelines
If test orchestration logic has colonized your CI pipelines, the path forward is giving it somewhere better to live, not another round of YAML refactoring.
Test orchestration has its own concerns: scheduling, environment management, failure routing, visibility, cost. When those concerns get compressed into delivery pipeline code, you end up owning complexity that does not belong there and cannot be cleaned up without breaking something.
Testkube pulls that layer out and gives it dedicated infrastructure. It runs natively in Kubernetes, works with GitOps workflows, stays agnostic to whatever testing tools your teams use, and decouples fully from your CI/CD pipelines.
Frequently asked questions
{{banner-get-started}}
About Testkube
Testkube is the open testing platform for AI-driven engineering teams. It runs tests directly in your Kubernetes clusters, works with any CI/CD system, and supports every testing tool your team uses. By removing CI/CD bottlenecks, Testkube helps teams ship faster with confidence.
Get Started with a trial to see Testkube in action.





