一、先分清:传统模式 vs DevOps 模式
1. 传统老旧架构(分离割裂)
团队三段式,壁垒极强:
- 开发:写完代码扔给测试,不管部署、不管线上
- 测试:纯手工点点点,功能测试为主,偶尔写点用例
- 运维:纯人工部署、改配置、搭服务器、查故障、备份
痛点:
- 交付慢、改个小功能要几周
- 测试环境不一致、运维部署全靠脚本/手动
- 出问题互相甩锅:开发说环境问题,运维说代码问题
2. DevOps 模式(打破壁垒)
核心:开发、测试、运维 协同一体化
不是裁掉测试/运维,而是转型:
- 运维 → 云原生运维 / 平台运维 / SRE
- 测试 → 自动化测试 / 测试开发(QA→测开)
- 开发也要懂:部署、容器、简单运维、基础监控
二、运维:传统运维 VS DevOps 运维(SRE)
传统运维
- 装系统、搭环境、改nginx、改配置文件
- 手动发布、上传包、重启服务
- 服务器巡检、杀进程、清理日志
- 纯体力、重复、易出错
DevOps 运维 / SRE
- 不再手动部署,全部交给流水线(Jenkins/K8s)
- 核心工作:
- 维护 K8s 集群、DevOps 平台(Nexus、镜像仓库)
- 搭建监控、告警、日志体系
- 编写自动化脚本、容器化、资源调度
- 保障服务稳定性、容量规划、容灾
- 本质:从「干活的」变成「造平台、造工具的」
通俗说:
传统运维:天天登服务器敲命令
DevOps运维:写yaml、维护集群、搭自动化平台
三、测试:传统测试 VS DevOps 测试
传统测试
- 手工功能测试、点点页面
- 写测试用例、提bug
- 只测功能,不懂代码、不懂接口、不懂部署
DevOps 测试
- 自动化为主
接口自动化、UI自动化、性能测试、压测 - 融入流水线
代码提交→自动跑单元测试→自动跑接口测试→不通过直接拦截发布 - 要懂:
Linux、接口协议、Docker、基础容器、简单代码 - 细分:
- 功能测试(还保留,但占比变少)
- 测试开发:写测试平台、自动化框架、压测脚本
四、DevOps 时代,三者边界
- 开发
不只写业务代码,要会:
- 写 Dockerfile、打包镜像
- 看懂k8s基础配置
- 简单排查线上日志、监控
-
测试
左靠开发、右靠运维,做质量门禁
流水线卡点:代码质量、单元测试、接口测试、性能
-
运维/SRE
底层底座负责人:集群、网络、存储、高可用、自动化发布
五、结合你前面的 K8s/DevOps 架构
你搭的这套:
Gitee + Jenkins + Nexus + K8s + 微服务
就是标准 DevOps 底座:
- 代码提交自动构建
- 自动测试拦截问题
- 自动打包镜像、自动部署到K8s
- 运维只维护集群,不用手动一台台部署
直接消灭了传统运维90%的重复手工操作
六、一句话总结区别
- 传统:各干各的,手工为主,交付慢,壁垒重
- DevOps:全员协同,自动化为主,平台化,快速迭代
- 测试、运维不会消失,但只会保留「懂技术、懂自动化、懂云原生」的人,纯手工岗位会慢慢淘汰。