Terraform | 基础设施即代码测试流程(二)

1,893 阅读2分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

紧跟上一篇文章《# Terraform | 基础设施即代码测试流程(一)》,这篇文章讲合规性测试和端到端的测试。

图片.png

四、合规性测试

合规性测试用于确保配置遵循您为项目定义的策略,并且其应在项目开始时整合到开发周期中。

例如,对于Terraform代码,合规性策略可能有这样的例子:“如果您正在创建 Azure 资源,它必须包含一个标记”。

terraform-compliance工具提供了一个测试框架,我们可以使用它创建策略,然后根据 Terraform 执行plan去运行这些策略。

Note:Terraform Sentinel 也可用于将策略编写为代码,这是一项付费功能,仅适用于 terraform Cloud 或 Enterprise版本。除此之外, Cloudrail也是一个不错的选择。

可参照Azure官方文档的合规性测试-基于Azure的合规性测试

失败的测试示例

五、端到端测试

端到端测试也被称为“链测试”,是在部署到生产之前验证系统所有的组成部分是否协同工作,它是对整个过程链路的完整测试,端到端测试通常是一个三个步骤,包括:

  • 配置应用于测试环境
  • 然后将运行代码以验证结果
  • 测试环境被重新初始化或关闭(例如取消分配虚拟机)

同样的,Terratest 可用于端到端的测试(以及集成和单元测试)。

可参照Azure官方文档的端到端测试-基于Azure的端到端测试

示例端到端测试场景


少年,没看够?点击石头的主页,随便点点看看,说不定有惊喜呢?欢迎支持点赞/关注/评论,有你们的支持是我更文最大的动力,多谢啦!