# gruntwork-io/terratest

Terratest is a Go library that makes it easier to write automated tests for your infrastructure code.

Repository: https://github.com/gruntwork-io/terratest
Canonical: https://ross.abutalabs.com/products/terratest
Homepage: https://terratest.gruntwork.io/
Language: Go
License: Apache-2.0
License Family: permissive
Topics: devops, testing, testing-library, aws, terraform, packer, docker, golang
Last push: 2026-08-25T03:18:57+00:00

## Health v2 (maintenance only)
Score: 92/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 78, longevity 100
- inputs: {"age_days": 3834, "days_push": 8, "days_rel": 67, "gap_med": 47, "n_releases_24m": 14}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 7943, forks 1372 (observed 2026-08-28T04:10:10.087716+00:00)

## What it is
Terratest is a Go library that makes it easier to write automated tests for infrastructure code such as Terraform, Packer, Docker, Kubernetes, and Helm. It deploys real infrastructure in real environments, validates it via HTTP requests, API calls, and SSH, then tears it down.

## Use cases
- test terraform modules with automated go tests
- verify packer-built images work correctly
- integration test kubernetes and helm deployments
- validate aws/gcp/azure infrastructure after deployment
- run end-to-end tests against docker images
- ssh into servers to verify configuration during tests

## When to choose
- you write Terraform/OpenTofu, Packer, Docker, or Kubernetes infrastructure and want real end-to-end validation
- you prefer writing tests in Go and running them with go test
- you need helpers for cloud provider APIs (AWS, Azure, GCP) in tests

## When to avoid
- you only need fast unit tests without deploying real infrastructure
- you want a lightweight linter or static analysis tool for IaC
- your team does not use Go and cannot maintain Go test code

## Facets
- artifact type: library
- maturity: stable
- function: testing, e2e-testing, infrastructure-as-code, http-client, ssh
- domain: infrastructure-as-code, testing, cloud-computing
- platform: go, cross-platform, cloud
- tags: terraform, packer, helm, opentofu, terragrunt, infrastructure-testing, integration-testing, gcp, azure, devops, containers, docker, kubernetes

## Member repositories
- gruntwork-io/terratest (main) score 92

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:10.087716+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:33:13.508373+00:00, confidence not recorded.
  - readme: https://github.com/gruntwork-io/terratest (fetched 2026-08-28T04:10:10.087716+00:00, sha cd66329703c9)
  - homepage: https://terratest.gruntwork.io/ (fetched 2026-08-29T08:29:51.426510+00:00, sha 49aaaed7f07e)
  - site_page: https://terratest.gruntwork.io/docs/getting-started/quick-start (fetched 2026-08-29T08:29:51.435998+00:00, sha 1e71d493a67d)
  - site_page: https://terratest.gruntwork.io/docs (fetched 2026-08-29T08:29:51.439025+00:00, sha de5a342a4d9c)
  - site_page: https://terratest.gruntwork.io/docs/getting-started/introduction (fetched 2026-08-29T08:29:51.441235+00:00, sha f23ef6efb5d0)
  - site_page: https://terratest.gruntwork.io/docs/community/support (fetched 2026-08-29T08:29:51.443551+00:00, sha 626233bdfae0)
- Data as of 2026-08-30T08:39:29.467469+00:00.
