Table of Contents
Table of Contents
Further Reading
What Does a Custom Executor Mean?
A custom executor is a user-defined component that tells a testing platform how to run one kind of test. In Testkube, executors were containerized components for running test types like Postman, Cypress, or JMeter.
Custom executors let teams go beyond built-in options and bring their own languages, frameworks, or in-house tools.
Custom Executors vs. Test Workflows
Testkube has since moved from executors to Test Workflows. Workflows can run any container image directly, so a separate executor is no longer required.
Why Custom Test Execution Matters
Not every team uses the same tools. Some rely on niche frameworks, proprietary scripts, or specialized logic that mainstream tools do not support.
- Full flexibility: any tool or runtime can run
- No lock-in: teams bring their own frameworks
- Kubernetes-native reach: custom tests get the same scaling and isolation
- Easier adoption: complex or regulated environments keep existing tools
How Custom Executors Worked
- Container image: package the testing tool and its runtime.
- Executor definition: register the executor with a Kubernetes custom resource.
- Test definition: write the test in the tool's own format.
- Execution: Testkube starts a pod from the image, runs the test, and collects logs and artifacts.
With Test Workflows, steps one and four remain, and the separate registration step goes away.
Real-World Use Cases
- B2B SaaS in-house frameworks: a SaaS company runs its internal contract-test runner in Kubernetes
- Domain-specific checks: hardware simulations or compliance validations
- Emerging tools: new frameworks before official support exists
- Legacy suites: older tests run in Kubernetes without rewrites
Best Practices for Running Custom Test Tools
- Use Test Workflows: reference your image directly instead of creating executors
- Keep images small: faster pulls mean faster runs
- Version images: pin tags so runs are reproducible
- Write standard results: emit JUnit XML or similar for central reporting
- Share via Git: store workflow definitions for reuse across teams



