技术实践中的测试之道
1. CI/CD 工具部署与同步
当你查看 ArgoCD 网页时,会看到应用开始在集群中部署和同步,这一过程需要一些时间才能完全完成。例如,Jenkins 会构建运行管道作业所需的所有默认代理镜像。通过践行一切皆代码的理念,我们能轻松地将这些工具重新部署到任何 Kubernetes 集群中,跟踪所做的更改,并管理工具的生命周期。
2. 测试的重要性
在将应用代码从想法转化为编译再到部署的过程中,我们使用了各种工具。但如何确保所构建的东西能按预期工作呢?仅仅创建一个编译代码并将其部署到生产环境的管道是不够的,我们需要在软件管道中引入测试质量步骤和关卡。
3. 测试自动化金字塔
测试自动化金字塔由 Michael Cohn 提出,是进入自动化测试世界的一个很好的起点。传统的三层测试金字塔结构如下:
- 单元测试(UNIT TESTS) :处于金字塔底部,是应用中可测试的最小代码量。单元测试对其他项目的依赖很少或没有,运行时能提供即时和精确的反馈,能准确指出代码中的问题所在。而且编写成本低、易于维护、执行速度快,所以应该编写更多的单元测试。
- 服务测试 :有时被视为集成测试,是验证应用内服务是否按预期运行的 API 测试,包括单服务调用和服务链调用。根据金字塔理论,服务测试的执行成本较高,所以数量应少于单元测试。
- 用户界面(UI)测试或端到端系统测试 :位于金字塔顶部,负责验证系统作为一个整体是否按预期运行。UI 测试在面对变化时可能很脆弱,容易中断,需要维护以保持相关
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



