Scalable testing infrastructure with Kubernetes and Concord
# Testing at scale
Genuine CI/CD can’t be accomplished without continous testing. At organizations like Walmart, where about 50k deployments happen every day, we need a robust and scalable test infrastructure to execute these tests.
We use Concord ( ) for deployments.It is an orchestration engine that connects different systems together using scenarios and plugins.
## Testing challenges
The teams at Walmart excel at automated testing and with about 1M of CI jobs running 24X7 (many of them run end-to-end tests for an hour or two), we’re at risk of hoarding the resources on our CI/CD servers. We needed a flexible and scalable solution which can meet the needs of the teams who run long end-to-end tests.
We created a Concord plugin which will allow the users to leverage the Kubernetes infrastructure to run their end-to-end tests. Users can submit their Docker image for tests to Concord. It spins up a container called `Orchestra` which in turn spins up the jobs and suspends the Concord process. Once the jobs complete, it resumes the Concord process and users can continue with their flow.
1) Reliable and clean environment for testing
2) Scalable testing infrastructure with Kubernetes
3) Immutable and repeatable testing
Pranav ParikhWalmart Labs
Pranav is a Software Engineer with a passion for making lives of fellow engineers better. He currently works in the Software Development Enablement team at Walmart. His primary focus is to work on our open-sourced CD platform Concord along with helping teams to test their applications in a faster and reliable way. Before Walmart, Pranav was working with Yahoo where he was involved in developing test automation frameworks , tools and services for developer productivity and web services.