--- title: "CTP Topic 56 Automated infrastructure testing" type: source tags: - Testing - IaC - Automation - CTP date: 2026-04-14 --- ## Source File - [[raw/Cloud & DevOps/Public-Cloud-Learning-Sessions/06_CI_CD_GitOps/ctp-topic-56-automated-infrastructure-testing.md]] ## Summary - 核心主题:自动化基础设施测试,介绍 TerraTest 框架和测试驱动开发(TDD)在基础设施即代码中的应用 - 问题域:CI/CD、基础设施即代码(IaC)、DevOps - 方法/机制:使用 TerraTest 自动化 Terraform apply-test-destroy 周期;采用测试驱动开发工作流 - 结论/价值:自动化测试可提升基础设施部署质量,减少生产故障,提高团队信心 ## Key Claims - TerraTest(Golang 库)可自动执行 apply-test-destroy 流程,简化基础设施测试 - 集成测试验证已部署基础设施的实际功能,超出语法检查范围 - 测试驱动开发(TDD)通过先写测试再实现功能,确保聚焦开发目标 - 自动化测试长期收益(减少 bug、提高信心)远超初期投入 ## Key Quotes > "重复性工作交给计算机,复杂的人类思考留给人脑。" — Mark Francis > "把测试视为头等公民,延伸基础设施即代码的价值。" — Mark Francis ## Key Concepts - [[TerraTest]]:Golang 编写的自动化基础设施测试库 - [[Test-Driven Development]]:测试驱动开发方法论 - [[Infrastructure as Code]]:通过代码管理基础设施 - [[Integration Testing]]:集成测试验证已部署基础设施 - [[Automated Testing]]:自动化测试提升部署质量 ## Key Entities - [[Mark Francis]]:CTP Topic 56 演讲者 ## Connections - [[CTP Topic 32 Using Atlantis CICD for Infrastructure Deployments]] ← relates_to ← [[TerraTest]] - [[CTP Topic 9 CI CD with Gruntwork]] ← relates_to ← [[Automated Testing]] - [[CTP Topic 11 AD Integration and Login using AD accounts]] ← precedes ← [[Test-Driven Development]]