- Home
- Infrastructure Testing Tools
- Test Kitchen
Test Kitchen
What it is
Test Kitchen is a free test harness for running infrastructure code in isolation across one or more platforms. Its workflow uses create, converge, setup, verify, and destroy commands to provision environments and test the code. Documented drivers target environments including Amazon EC2, Apache CloudStack, DigitalOcean, Docker through Dokken, Google Cloud Platform, Hetzner Cloud, Vagrant, Azure, Hyper-V, OpenStack, and VMware products. Which drivers are available depends on the driver gems installed in the Ruby environment. Provisioning can use Chef Infra, Cinc Client, Habitat, PowerShell DSC, or shell scripts; listed verification frameworks include Cinc Auditor, Chef InSpec, and Serverspec. Community-maintained plugins add Ansible, Puppet, and Salt provisioners. Test Kitchen can be installed from RubyGems, system packages, or Cinc Workstation; it does not itself bundle Cinc or Chef tooling. Its requirements include a 64-bit operating system and enabled CPU virtualization. It is licensed under Apache License 2.0, and the documentation directs users to Chef Community Slack for community assistance. The documentation notes that kitchen-docker has known issues and no current maintainer, and recommends kitchen-dokken instead.
For and against
For
- Tests infrastructure code across one or more platforms.
- Provisioners include Chef Infra, Habitat, PowerShell DSC, and shell.
- Verification integrations include Cinc Auditor, Chef InSpec, and Serverspec.
- Installable through RubyGems, system packages, or Cinc Workstation.
- Apache License 2.0.
Against
- Requires a 64-bit operating system and enabled CPU virtualization.
- Driver availability depends on installed Ruby gems.
- Test Kitchen does not bundle Cinc or Chef tooling.
- The kitchen-docker driver has known issues and no maintainer.
The verdict
Test Kitchen offers a command-based workflow for provisioning environments and checking infrastructure code, with multiple driver, provisioner, and verifier options. Users need the appropriate driver gems and should note the stated system prerequisites and kitchen-docker limitation.
Who it suits
Test Kitchen suits infrastructure developers who want to provision isolated environments and verify infrastructure code. Its documented example uses a Chef Infra cookbook and a test-driven development workflow.
Plans and prices
Open-source Test Kitchen
Apache License 2.0 · self-managed Ruby installation
Read 15 Oct 2026 · kitchen.ci
On the record
- Additional provisioners
- The documentation lists community-maintained kitchen-ansible, kitchen-puppet, and kitchen-salt plugins.kitchen.ci · read 30 Sep 2026
- Audience
- The getting-started guide demonstrates using Test Kitchen to create and test a Chef Infra cookbook and describes a test-driven development workflow.kitchen.ci · read 30 Sep 2026
- Built-in workflows
- The documented lifecycle uses create, converge, setup, verify, and destroy commands.kitchen.ci · read 15 Oct 2026
- Chef dependency handling
- Chef workflows can resolve cookbook dependencies through Berkshelf or Policyfiles, or use a cookbooks directory.kitchen.ci · read 15 Oct 2026
- Company founded
- Progress says four founders created the company in 1981.progress.com · read 15 Oct 2026
- Company headquarters
- LinkedIn identifies Burlington, Massachusetts as Progress Software headquarters.linkedin.com · read 15 Oct 2026
- Company size
- LinkedIn lists Progress Software as a public software-development company with 1,001–5,000 employees and 4,302 discoverable employees.linkedin.com · read 15 Oct 2026
- Current release
- GitHub lists Test Kitchen 4.1.5, released on September 18, 2026, with streamed log formatter reuse as a performance improvement.github.com · read 15 Oct 2026
- Documentation depth
- The documentation site contains getting-started guides, command references, driver, transport, provisioner and verifier pages, configuration reference, contracts, examples, FAQ, lifecycle hooks, and glossary.kitchen.ci · read 15 Oct 2026
- Driver architecture
- Drivers connect Test Kitchen to virtualization systems and cloud providers including Vagrant, Amazon EC2, Azure, Google Compute Engine, VMware, and Docker.kitchen.ci · read 15 Oct 2026
- Driver availability
- Driver availability depends on which driver gems are installed in the Ruby environment running Kitchen.kitchen.ci · read 30 Sep 2026
- Driver integrations
- Official driver documentation covers AWS EC2, CloudStack, DigitalOcean, Docker via Dokken, Google Cloud, Hetzner, Vagrant, Azure, Hyper-V, OpenStack, VMware vCenter, and VMware vRealize Automation.kitchen.ci · read 15 Oct 2026
- Drivers
- Documented drivers target Amazon EC2, Apache CloudStack, DigitalOcean, Docker via Dokken, Google Cloud Platform, Hetzner Cloud, Vagrant, Azure, Hyper-V, OpenStack, VMware vCenter, and VMware vRealize Automation.kitchen.ci · read 30 Sep 2026
- Extensibility API
- The current driver contract documents the existing driver API behavior and implementation details for plugin authors.kitchen.ci · read 15 Oct 2026
- Installation
- Users can install the gem with gem install test-kitchen or install Cinc Workstation.kitchen.ci · read 15 Oct 2026
- License
- The project is released under the Apache License 2.0.kitchen.ci · read 15 Oct 2026
- Limit: abstraction overhead
- A G2 reviewer wanted the underlying Vagrant configuration exposed verbatim instead of abstracted behind Kitchen configuration.g2.com · read 15 Oct 2026
- Limitations
- The documentation says the kitchen-docker driver is currently without a maintainer and has known issues, and recommends kitchen-dokken instead.kitchen.ci · read 30 Sep 2026