Skip to content
SPECIFICTION
Get listed

Terratest vs Test Kitchen

Terratest

terratest.gruntwork.io

Test Kitchen

kitchen.ci

Side by side

FigureTerratestTest Kitchen
Price fromFreeFree
Free planYesYes
Free trial——
Open source—Yes
Windows—Yes
macOS—Yes
LinuxYesYes
API—Yes
Self-hosted—Yes
Plans published11
Spec score · Infrastructure Testing Tools7.8 (#13)8.2 (#7)
LicenseThe Terratest code is released under the Apache 2.0 License.The project is released under the Apache License 2.0.
PurposeTerratest is a Go library with patterns and helper functions for testing infrastructure code.Test Kitchen is a test harness for executing infrastructure code on one or more platforms in isolation.
SupportUsers can ask general questions in GitHub Discussions, report bugs or request improvements through GitHub Issues, and obtain commercial support from Gruntwork.The documentation directs users to the #test-kitchen channel on Chef Community Slack for assistance from community members.
What it doesTerratest is a Go library for writing automated tests for infrastructure code.Test Kitchen runs infrastructure code against one or more isolated target platforms.

Plans

Terratest

  • Apache 2.0 open-source licenseFree

Terratest pricing →

Test Kitchen

  • Open-source Test KitchenFree

Test Kitchen pricing →

In their own words

Terratest

Terratest is an open-source Go library for writing automated tests for infrastructure code. Its helpers cover Terraform, OpenTofu, Terragrunt, Packer, Helm, Docker, and Kubernetes, as well as AWS, Azure, and GCP APIs. Tests can run infrastructure tools, deploy real resources, validate the resulting environment, and remove resources afterward. Validation can use HTTP requests, API calls, SSH connections, and shell commands. The documentation covers unit, integration, and end-to-end tests, along with parallelism, retries, error handling, and static analysis. Terratest runs locally and supports configuration-compliance checks, provisioning tests, deployed checks, and policy as code. The project is free under the Apache 2.0 License. The quick start requires Go 1.26 or later and OpenTofu or Terraform for its examples. The documentation recommends cleaning up after tests because they may create resources in real environments. General questions and issue reports go through GitHub Discussions and Issues; Gruntwork offers commercial support to companies using Terratest in production. The v1 line receives security fixes only while v2 is in development.

Visit terratest.gruntwork.io

Test Kitchen

Test Kitchen is a free test harness for running infrastructure code in isolation on one or more platforms. Its workflow uses create, converge, setup, verify, and destroy commands to provision environments and test infrastructure code. Documented drivers cover 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 options include Chef Infra, Cinc Client, Habitat, PowerShell DSC, and shell scripts; listed verification integrations include Cinc Auditor, Chef InSpec, and Serverspec. Community plugins add Ansible, Puppet, and Salt provisioners. Installation is available through RubyGems, system packages, or Cinc Workstation, but Test Kitchen itself does not bundle Cinc or Chef tooling. Requirements include a 64-bit operating system and enabled CPU virtualization. The project uses Apache License 2.0 and points users to Chef Community Slack for community assistance. The documentation notes known issues and no current maintainer for kitchen-docker, recommending kitchen-dokken instead.

Visit kitchen.ci