当前位置:网站首页>测试攻城狮必备技能点!一文带你解读DevOps下的测试技术
测试攻城狮必备技能点!一文带你解读DevOps下的测试技术
2020-11-06 22:33:00 【华为云开发者社区】
【摘要】本文将从DevOps模式下对测试人员的活动的变化,以及常用的测试技术层面进行解读。
项目的软件开发模式主要经历瀑布模型、敏捷开发和DevOps这几个阶段,其中DevOps主要解决开发和运维、运营之间的隔阂,更强调自需求设计至生产部署的端到端协同运作,更强调精益、高效;更强调想尽办法剔除每个环节的浪费,极致追求每个环节的高生产率,达到快速、高质量上线的目的。本文将从DevOps模式下对测试人员的活动的变化,以及常用的测试技术层面进行解读。
1、为什么会有DevOps?
项目的软件开发模式主要经历了以下几个阶段:
瀑布模型解决了分工协作困难的问题,但是一年1~2次的发布流程太慢,且无法满足日益变化的需求变更。
敏捷开发解决了需求频繁变更、上线慢的问题。但是未解决开发和运维的鸿沟,甚至给开发和维护之间增加了非常多困难和争议。
DevOps在敏捷的基础上,从E2E的角度来考量。主要解决开发和运维、运营之间的隔阂,更强调自需求设计至生产部署的端到端协同运作,更强调精益、高效;更强调想尽办法剔除每个环节的浪费,极致追求每个环节的高生产率,达到快速、高质量上线的目的:
2、DevOps模式给软件测试带来了哪些变化:
一个DevOps活动的流程如上图所示,可以看到测试已经融入到DevOps流程中的一环,DevOps模式下的测试流程也会发生变化。以我们团队为例,看下在DevOps模式下常用的测试方法和活动:
可以看出,
1、全流程测试:测试活动已经贯穿到DevOps全环节,DevOps模式下测试并未消失,而是嵌入到全流程的阈值评估点中。
2、测试向左移动:开发团队也要承担起测试的任务,测试团队也会接入到开发阶段的测试及测试指导活动
3、自动化权重增加:接口自动化、契约自动化测试、功能自动化被大量使用,用来提高上线测试进度
4、UT弱化,API和契约测试更被愿意接受:UT自动化依旧存在,由于UT维护工作量巨大,且需求变化快,导致UT的投入产出不成比例,UT自动化权重下降,使用API和契约、Mock等测试替代。
5、测试菱形模型:有专家指出,DevOps模式下,测试的倒三角模型依旧存在,但是测试层依旧很重要,甚至要做厚测试层,呈现菱形模型,个人认可这种菱形模型。
6、部署自动化,灰度发布越来越受欢迎:服务的部署已经完全被自动化工具替换,测试基于部署的环境进行自助测试。同时,灰度发布和A/B测试很好的解决了流程过快导致的全局性风险,升级和回退成为常规活动。
7、测试人员依旧必要:服务测试和解决方案测试依旧很重要,同时也是DevOPS流程中发现问题最多的环节,是DevOps环节中不可或缺的一环。
8、在线测试和度量兴起:OPS阶段的测试和在线监控越来越被接受,权重增加,比如在线拨测、在线测试、在线度量。
9、平台工具的重要性:DevOps流程环节打通后,更加依赖平台工具的能力做支撑,比如华为的DevOps平台DevCloud软件开发云、ServiceStage等都提供了很好的流程打通能力,使整个流程得心应手,降低准入门槛。
结语:以上就是DevOps模式下常用的测试方法和活动,希望对相关小伙伴的工作带来一些指导意义。下一期,我们将介绍下具体的DevOps测试技术和测试实践,敬请关注!
版权声明
本文为[华为云开发者社区]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4526289/blog/4703901
边栏推荐
- Nanjing logo design and production, guide VI system design
- Interviewer: how about shardingsphere
- The essence of transaction and the principle of deadlock
- The method of local search port number occupation in Windows system
- win7 APPCRASH(解决方法)(转)
- 轻量型 GPU 应用首选 京东智联云推出 NVIDIA vGPU 实例
- Unity performance optimization
- Composition of MRAM cache
- What are the highlights of Huawei mate 40 series with HMS?
- Exclusive interview of guests at | 2020 PostgreSQL Asia Conference: Wang Tao
猜你喜欢
Zhou Jie: database system of East China Normal University
Ora-02292: complete constraint violation (midbjdev2.sys_ C0020757) - subrecord found
上海巨微专用蓝牙广播芯片
A good thing for working people -- to temper the will of iron and steel requires such an efficient computer
August 14, 2020: what are the execution engines for data tasks?
Utility class functions (continuous update)
Qt音视频开发46-视频传输UDP版
List to map (split the list according to the key, and the value of the same key is a list)
How much disk space does a file of 1 byte actually occupy
2020-08-18:介绍下MR过程?
随机推荐
上海巨微专用蓝牙广播芯片
Epu360: all the H5 templates you want are here, e-book, big turntable, red envelope rain, questionnaire survey
html+ vue.js Implementing paging compatible IE
1万辆!理想汽车召回全部缺陷车:已发生事故97起,亏损将扩大
Zhou Jie: database system of East China Normal University
小程序商城系统插件代码该如何写?怎么用代码检查添加插件是否成功?
JS string - string string object method
August 18, 2020: introduce Mr process?
vue3 新特性
高速公路二维码定位报警系统
Bluetooth broadcast chip for Shanghai giant micro
[byte jumps, autumn recruitment Posts open] ohayoo! Don't leave after school, I want to ask you to play games!!!
Configuration of AP hotspot on xunwei-imx6ull development board
What grammar is it? ]
How much disk space does a new empty file take?
All the way, I was forced to talk about C code debugging skills and remote debugging
C and C / C + + mixed programming series 5 - GC collaboration of memory management
A concise tutorial for Nacos, ribbon and feign
Jenkins installation and deployment process
The role of theme music in games