当前位置: 首页 > news >正文

从测试角度看待CI/CD,敏捷开发

什么是敏捷开发?

是在高强度反馈的情况下,短周期,不断的迭代产品,满足用户需求,抢占更多的市场

敏捷开发是什么?

是一种产品快速迭代的情况下,降低出错的概率,具体会落实到公司的规章制度上,去确保快速响应,快速迭代

什么是CI/CD

是一种持续交付,持续部署并自动测试的自动化软件系统,是敏捷落地的具体产物,

我以我在前东家了解到的业务实践场景,简述下:

CI

CI是持续提交,具体体现在开发同学,可以在github不同的提交分支代码,Jenkins自动拉取最新的分支代码部署,测试同学 在ModHeader 中设置 X-Env-Branch: 分支名称(一个浏览器插件,用于修改HTTP请求头),后端就会自动将请求路由到对应分支环境的镜像实例,实现多分支并行测试的能力,且互不干扰。
这个是我目前见过最好的一个落地实践,在部署完毕之后,还可以自动执行核心测试套件(接口返回200),进行自动化测试,测试不通过,自动@提交者,那些接口有问题

CD

是随时可以发布,但是具体到实施,都是有固定的时间节点,错过了,需要走紧急发布邮件通知负责人,这样做的好处是:在特定节点上线,有利于集成测试环境的回归,确保在回归环境下,所有的改动,所有模块都被测试过;
CD发布的环境,可以具体划分为
分支测试环境:对应上述的CI开发提交代码
集成测试环境:分支测试没有问题,便把代码合到master分支,Jenkins自动拉取并部署
stage环境:和线上共用同一个库,区别是没有流量的进入
生产环境:真实用户使用的环境

比较好的CD落地是,测试同学可以手动设置不同的tag进行发布,并关联jira上需求的状态,对需求的状态相互验证,如果当前环境有问题,测试同学可以选择测试不通过,或者发布中止,进入回滚流程,选最近一次生产发布过的tag,进行快速回滚

http://www.lqws.cn/news/99469.html

相关文章:

  • tauri项目绕开plugin-shell直接调用可执行文件并携带任意参数
  • OpenCV C++ 学习笔记(五):颜色空间转换、数值类型转换、图像混合、图像缩放
  • redis数据过期策略
  • 垂起固定翼无人机应用及技术分析
  • [特殊字符] Unity UI 性能优化终极指南 — ScrollRect篇
  • 如何提高工作效率
  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(31):そう
  • 第十三章 Java基础-特殊处理
  • 【鸿蒙】HarmonyOS NEXT之如何正常加载地图组件
  • HTTP连接管理——短连接,长连接,HTTP 流水线
  • 常见的七种排序算法 ——直接插入排序
  • Vue-ref 与 props
  • 数据的评估与清洗篇---评估数据
  • TSN 中的 CBS(Credit-Based Shaper)功能详解
  • 低谷才是出成绩
  • C#对象扩展方法:提升对象操作的灵活性与效率
  • 【Web应用】若依框架:基础篇13 源码阅读-前端代码分析
  • 物联网数据归档方案选择分析
  • 24.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--认证微服务
  • 华为盘古 Ultra MoE 模型:国产 AI 的技术突破与行业影响
  • 更新已打包好的 Spring Boot JAR 文件中的 class 文件
  • Vue.js教学第十八章:Vue 与后端交互(二):Axios 拦截器与高级应用
  • 从汇编的角度揭秘C++引用,豁然开朗
  • 硬件工程师笔记——555定时器应用Multisim电路仿真实验汇总
  • CRM管理软件的数据可视化功能使用技巧:让数据驱动决策
  • SpringBoot 之 JWT
  • 8.RV1126-OPENCV 视频中添加LOGO
  • Web后端快速入门(Maven)
  • OSCP备战-BSides-Vancouver-2018-Workshop靶机详细步骤
  • Vert.x学习笔记-Verticle原理解析