站在DevOps肩膀上的TestOps(二)

一十一

发表于 2018-03-14 16:40:22

TestOps

摘要:

TestOps模型旨在将整个团队的注意力集中在质量上,因此TestOps确实需要无缝且可靠。 一个简单的例子是任何测试框架必须足够可靠,以至于很少有停机或连接问题。 无论何时,如果评估失败,或者延迟发布版本的反馈,都会对系统的有用性产生不好的印象。 这使TestOps团队的心态变得至关重要。

TestOps工具

对于TestOps团队来说,最重要的活动就是准确提供产品团队测试和接收反馈所需的工具。 对于敏捷产品团队和微服务的出现,出现了对新型测试基础架构的需求,而不是传统模型,其中测试环境取决于整个应用程序堆栈的可用性。

最重要的是,新组建的TestOps团队需要规划一个工作流程。

对于DevOps,构建系统是所有团队创建发布工件并执行较低级别测试的核心应用程序。 在功能测试工作流程方面,考虑到这些测试的长期运行并且通常很脆弱,从而阻碍了在失败测试中完成构建是一个问题,考虑到这一点,功能测试作为构建系统的后期过程被启动,并且因此 要求TestOps构建一个基础架构,不仅要从DevOps系统中提示它,而且要尽可能与其集成,以便为团队提供透明的工作流程。

图2 - 新测试和部署工作流程,同步DevOps和TestOps工具

要充分认识到这一无缝工作流程的价值,团队必须指定他们想要测试的内容以及何时进行测试 一个规范必须存在,TestOps可以以编程方式理解消除由人为干涉来配置测试所引起的延迟,其中包含如下详细信息:

  • 定义运行测试的时间 - 每次提交,或者每当指定的标识符(在这种情况下,Github标签/版本存在)及其子集
  • 给定的版本/模块/功能的测试边界
  • 测试计划中都包含哪些技术
  • 需要什么测试运行器命令
  • 这些测试将使用哪种服务模板 - 基本上需要执行这些测试的资源和环境,例如服务器,Docker镜像等等

然后TestOps可以将这些要求转化为在构建完成后立即开始测试,测试可以在没有人为干预的情况下开始,此时QA的任务是审查测试结果。

大多数团队的功能都不足以孤立地工作,很多都依赖于外部服务。能够确保对测试和任何消费者的变更的信心是一个挑战,特别是当这些消费者通常不在同一位置或代码库时。 TestOps应该提供一种机制来配置其他模块测试可以在后期构建中使用,以确保一致性,并在没有人工干预的情况下彻底根除下游消费者的任何中断变化。 该配置最好放置在与其他测试配置相同的位置,即前面部分中提到的测试规范。 这个规范是消除风险的另一个项目,因为产品团队在大多数情况下应该最清楚他们所做的更改与哪些应用程序/平台交互的部分。

TestOps文化

在DevOps和TestOps之间基础设施的两个方面,剩下的部分是文化上的变化,以确保所有产品团队都能看到这个系统的好处,他们都投资于追求质量。最终的理想之处是能够在没有质量保证干预的情况下发布软件,因为整个团队都在测试覆盖率和质量方面投入了大量资金,DevOps / TestOps工具允许对发布状态作出快速准确的反馈。

评估

  • 由于测试和发布工具的变化,我们已经摆脱了不规则的发布时间表,我们平均每周发布两次。 我们现在每周都会连续四次发布产品。
  • 将构建自动部署到测试环境会减少从构建完成到测试的平均时间,从构建完成和测试开始到平均延迟为零,平均延迟1天,测试从构建完成后立即开始。 这使得测试版本平均提前1天准备发布。
  • 测试和发布管理工具的这些优势和其他效率提升,我们减少了交付到生产的平均时间,从平均一周到一个工作日
  • Docker容器立即可用于运行测试,测试问题可以实现即时反馈
  • 自开始这项工作以来,我们成本降低了20%

找到TestOps适合测试场景,而不会妨碍开发工作流程。 通过TestOps保障交付质量,确保团队有权随意发布,同时保持我们产品的质量水平 客户期望。

TestOps中文社区公众号
 
 微信   :  wonter
 QQ群 :  632418478

原文地址:https://www.cnblogs.com/Javame/p/8675955.html

时间: 2024-10-16 20:03:41

站在DevOps肩膀上的TestOps(二)的相关文章

站在DevOps肩膀上的TestOps(一)

一十一 发表于 2018-03-14 15:50:03 TestOps 摘要: DevOps团队的职责是“无摩擦发展”. 这是对“速度需求”驱动的发展理念的一种渴望,以及有意识地去除从概念到客户的想法. 无摩擦的发展使产品团队能够专注于创新,而不是陷入经常任意的过程. 这种运动为质量保证工程师提出了一个有趣的问题,因为“对速度的需求”的思路让他们以更少的时间(主要是时间)做更多的事情,同步对话的双方面临的挑战往往是棘手的. 着眼于提高交付速度往往会使质量问题成为焦点. 怎么确保'速度需求'不仅仅

android开发利器--站在巨人肩膀上前行

本文主要介绍有助于android开发的三方平台和网站. 一:开发阶段 1:SVN(一个开放源代码的版本控制系统) 团队开发没有服务器,代码管理就没那么方便了,推荐taocode阿里开源网站,方便团队开发,不用安装客户端,方便快捷. 2:服务器(一个管理资源并为用户提供服务的计算机) 团队开发初期,资金有限没服务器?阿里云免费使用6个月,新浪云也可助你一臂之力. 3:android论坛(在线答疑,资源共享,分享心得) 没有名师指路?EOE论坛追求提问没有0回复,解决问题好帮手;CSDN最大的中国I

站在巨人肩膀上——vb.net学习

jeecg v3.0入门视频 链接: http://pan.baidu.com/s/1bnrMfiJ密码: 8q0k MiniDao持久层 入门视频 链接: http://pan.baidu.com/s/1eQGc4W6 密码: stst JEECG-OnlineCoding<企业招聘系统> 视频 链接:http://pan.baidu.com/s/1sjHHVM9 密码: os7b JEECG公开课视频 链接: http://pan.baidu.com/s/1pJFeiiJ 密码: cr75

解决问题的方法--站在巨人肩膀上思考1

项目中使用js进行数据前台的显示,遇到一个问题和解决方法,对解决方法进行思考.      后台传数据给js,js负责把得到的数据放到img标签的title中,这时问题出现了,后台的数据又特殊字符&XXXX;("·"),这样在title中显示的时候就成为了的字符了. 1.于是就开始搜索怎么使用js把&XXXX;转换为"·",找了很多文章写的都不是很好,写了自己一套的js转义函数进行转义,这个问题没有这么复杂. 2.开始思考jquery有什么好的方法,没

站在巨人的肩膀上才能看得更加远[Amo]

本来只是路过,写详细一点.我看楼主浮躁得不得了.现在什么都不要做了,先去看几遍<不要做浮躁的嵌入式工程师>这篇文章,想清楚了,再动手吧.我做了个实例,不用ST的库来点LED,解答你的问题我的 KeilMDK 3.5我的STM32板子奋斗版是 ,IC 是 STM32F103VET6调试工具 JLINK V8LED 接在 PB5 ,高电平点亮既然楼主说一定懂C语言了,那么对于下面我的问题,不查百度,完全靠自己,懂多少?然后查了百度之后又能懂多少?(一)新建 keil 工程,IC选择 ST 公司的

站在巨人的肩膀上——人事项目数据导出word

最近在做人事项目中的,数据导出word,具体的说就是从web客户端页面获取信息,添加到信函模板中,再导出为word文档.总结一下,学会了两种方法,1.通过将word模板转换为html文件,输出word.2.利用第三方组件Aspose.Words操作word模板,输出word. 一.通过将word模板转换为html文件,输出word 1.制作word模板,在word文档中要添加内容的地方输入占位符. 2.把word模板另存为html文件. 文件-另存为-网页htm文件. 3前台代码 <asp:Bu

站在巨人的肩膀上,谈 app 的创新性

这段时间做了.看了.听了,也想了很多,我们的成功始终是站在巨人的肩膀上的,在学习了很多工业界大牛的经验之谈之后,我经过认真的思考,特别想整理这样一篇文章,希望与许多有梦想的 IT 小伙伴儿们共享.共勉!如果说的不对的地方,欢迎大家在下面留言讨论,虚心学习. 随着移动设备的普遍和相关技术的成熟发展,我们都希望自己可以开发一个好用的应用,不管是公益性的还是旨在运营推广的app,既然练手何不做的有声有色.如果你不是在资源丰富的平台下,而是自己组队开发一个app,并向体现自己的竞争力,能够脱颖而出,那么

小游戏“跳一跳”——站在巨人的肩膀上,用技术为自己助力

在更新最新版微信之后,聊天列表下拉会出现一个崭新的模块,其中就有新推出的"跳一跳"小游戏.而在我几经努力奋斗到266分的时候,已经有技术大牛占据1999的高地... 抱着试一试的心态和蠢蠢欲动的好奇心... 实现了程序助力玩游戏... 具体代码来自gitHub的python大牛... 感兴趣的同学可以和我一起站在巨人的肩膀上... 另外说一点, 如果以后还想玩"跳一跳"的话... 不建议你接着往下看... 因为当你有了捷径... 整个游戏瞬间变得索然无味... 如果

站在巨人的肩膀上,C++开源库大全

程序员要站在巨人的肩膀上,C++拥有丰富的开源库,这里包括:标准库.Web应用框架.人工智能.数据库.图片处理.机器学习.日志.代码分析等. 标准库 C++ Standard Library:是一系列类和函数的集合,使用核心语言编写,也是C++ISO自身标准的一部分. Standard Template Library:标准模板库 C POSIX library : POSIX系统的C标准库规范 ISO C++ Standards Committee :C++标准委员会 框架 C++通用框架和库