Sandboxes are test environments that consist of one or more "under test" versions of microservices. These microservices have their dependencies fulfilled by a stable, baseline environment that runs stable versions of other services. To separate test requests for Sandboxes, traffic labeling and routing is utilized. This allows for the creation of multiple environments within a Kubernetes cluster, each with its own independent flow of traffic through various microservices.
Run integration tests for any service in a Kubernetes cluster with the latest versions of dependent services. Fully realize Continuous Delivery.
Enable developers to collaborate on a change to one or more microservices to test functionality before merging back into master.
Test the impact of a change to every service in your stack on end-to-end flows. See what your end users see.
Discover performance and other non-functional regressions before merging.
Share early previews of new features with product managers, quality engineers and user experience teams.
Automate API testing for your microservices using Sandbox URLs with tools like Postman, RestAssured, JMeter and others. Sandbox URLs support http and gRPC APIs.
Create a Sandbox by "forking" one or more baseline workloads. Customize "forked" versions with specific docker images and environment variables.
Isolate Sandbox environments when there are stateful components involved like databases and message queues. Resource Plugins are installed directly into the Kubernetes cluster using a Kubernetes CustomResource and are invoked during the creation and deletion of Sandboxes that reference them.