Test Kitchen provides a test harness to execute infrastructure code on one or more platforms in isolation.
A driver plugin architecture is used to run code on various cloud providers and virtualization technologies such as Vagrant, Amazon EC2, Microsoft Azure, Google Compute Engine, VMware vSphere, Docker, and more. Read more
Many testing frameworks are supported out of the box including Chef InSpec, Serverspec, and Bats
For Chef Infra workflows, cookbook dependency resolution via
is supported or include a
cookbooks/ directory and
Kitchen will know what to do.
Test Kitchen is used by all Chef-managed community cookbooks and is the integration testing tool of choice for cookbooks.
--- driver: name: vagrant provisioner: name: chef_infra platforms: - name: ubuntu-20.04 - name: windows-2022 suites: - name: client run_list: - recipe[postgresql::client] - name: server run_list: - recipe[postgresql::server]
$ kitchen create $ kitchen converge $ kitchen setup $ kitchen verify $ kitchen destroy
There are five basic commands to provision platforms and test infrastructure code.
--> Running rspec test suites ✔ git binary is found in PATH 3 tests, 2 failures Finished verifying <default-ubuntu-2004> (0m0.98s). --> Destroying --> Test Kitchen is finished. (1m44.11s)
Install the Chef
Workstation to get started. Alternatively,
install the gem directly with