摘要: 面对自动化测试成本高、测试不稳定、测试无法严控发布质量等常见研发过程中的测试问题时,企业如何避免?如何保障研发质量?阿里巴巴研发效能事业部-研发协同平台高级技术专家李帅(花名焦霸),通过阿里巴巴实践经验总结,为大家支招,并提供详细可落地的解决方案。

点此查看原文:http://click.aliyun.com/m/40558/
导读:面对自动化测试成本高、测试不稳定、测试无法严控发布质量等常见研发过程中的测试问题时,企业如何避免?如何保障研发质量?阿里巴巴研发效能事业部-研发协同平台高级技术专家李帅(花名焦霸),通过阿里巴巴实践经验总结,为大家支招,并提供详细可落地的解决方案。

直播回顾:https://yq.aliyun.com/webinar/play/370

研发过程中常见的测试问题

自动化测试成本高

在持续集成持续交付这样的过程中,自动化测试往往是非常重要的一环,但是在互联网高速迭代的研发模式下,往往没有时间和精力去投入,开发的时间都不够,更别说测试了。即使开始有自动化测试,后期也很难有毅力继续去维护。

积累的问题太多

自动化测试开始的晚,往往是在应用稳定了之后,我们才有精力去投入到自动化测试,这样造成的局面是积累的历史问题一大堆。对于测试用例失败还会去解决,但对于覆盖率低,代码不规范等等这样的问题,通常都是无力修复和解决的,但这些问题又和研发质量息息相关。

测试不稳定

这是一个老大难的问题了。测试环境不稳定,通常会导致测试本身不稳定,测试失败无法复现,因为它可能是由多种原因导致的。通常会有很多非代码原因的失败频现,这样会干扰我们整个测试执行过程。那整个的研发团队呢,就会对自动化测试丧失信心,通常他们发现一个测试失败了,结果不是因为代码原因,他们就会很沮丧。另外,多人共享一套测试环境,调试是非常不方便的。

测试无法严控发布质量

测试和发布,在一些初创团队,或者使用开源系统搭建起来的系统里面,往往只有两套或者多套系统,那么存在的问题是测试和发布通常是不能自动关联的,要么能关联,但是无法管控,这都是常见的问题。

阿里巴巴实践经验和解决方案

面对上述问题,阿里巴巴是如何解决的呢?经过这些年的积累,阿里巴巴总结了一些实践经验和解决方法,在这里分享给大家。

用例录制

面对自动化成本高的问题,阿里目前是通过用例录制的方式解决。首先,通过录制能够去降低开发成本;其次,录制一定是用例级别录制,这样可以降低测试的维护成本。另外,要包含多维度录制手段,包括WebUI录制,移动端录制,流量录制等,通过录制的方式解决自动化测试时用例撰写成本高的问题。

基线测试

面对积累的问题太多,在阿里内部,我们提出一个测试理念叫做基线测试,什么是基线测试呢?实际上它是把目前线上的版本视为基线,每次发布过程都基于当前的基线进行测试,发布成功之后会更新这个基线。那如何进行这个基线测试呢?首先我们会取基线和发布版本diff为增量,基于这个增量,进行增量代码扫描,增量测试覆盖率,增量的测试用例的测试,所有的数据产生的问题、缺陷数据等等都是以增量部分进行的,这样有利于我们整个质量管控推进。

我们首先要求团队,新的代码不能存在问题,比如覆盖率一定要达标,代码扫描不能有问题,我们用例部分的缺陷是优先修复的,这样有利于保证新的部分是经过验证的。同时在新的部分比较稳定的情况下,我们可以将旧的问题先搁置起来,有精力有时间的情况下再去修复。

云测试

面对测试不稳定这个问题的时候,在阿里内部已经打造了一套云测试系统。它包含了测试引擎,以及背后的资源调度。通常是使用ECS或者Docker为每次测试运行,提供一套唯一的测试环境,这样的好处是整个测试过程都是有动态隔离的环境去执行的,保证了测试的稳定性。另外,我们测试执行完之后,往往有一些调试的需求,这时候我们就会保留几个小时用于调试。

流程管控

第四个问题是测试无法严控发布质量。在阿里内部有一套一站式的研发协同平台,从需求、代码、发布、测试、度量全链路打通,自然而然所有环节都是管控在一起的,云效就是以这套系统打造的。同时,我们在发布环节,就通过发布流水线和测试服务这两个功能,严控质量红线。

云效体验

云效,一站式企业协同研发云,源于阿里巴巴多年先进的管理理念和工程实践,提供从“需求->开发->测试->发布->运维->运营”端到端的协同服务和研发工具支撑。支持公有云、专有云和混合云的协同研发,助力企业产品快速创新迭代和研发效能升级。

最近云效公有云上线三个功能,一个是测试服务,包含了单元测试、接口测试和安全扫描这三个测试服务;第二个是测试集合,是跟流水线紧密结合的功能;第三个是测试报表功能,测试报表会把我们以往的测试记录都记录下来,大家可以经过一些搜索条件进行简单的搜索筛选。

作者介绍:李帅(花名焦霸):阿里巴巴研发效能事业部-研发协同平台高级技术专家。2010年入职阿里巴巴,一直从事自动化测试工具、研发协同平台相关产品开发和架构设计工作,目前负责阿里巴巴研发协同平台测试域及效能度量域相关工作。

如何保障研发质量不踩坑?阿里技术专家教你几招相关推荐

  1. 踩坑 阿里云code第一次使用http远程clone项目的坑

    若要看ssh方式clone阿里云code请移步我的另一篇,有详细步骤 https://blog.csdn.net/c_o_d_e_/article/details/108062997 解决方案直接看总 ...

  2. 如何提高SEO优化的质量呢?网优谷教你几招

    对于网站的价值,选择优秀的关键词,能够对网站的流量起到较大帮组,网站流量除了受到排名的影响外,与关键词被搜索的次数也有很大关系.对于用户的价值 网站选择合适的关键词,能够满足用户的搜索需求,因此网站在 ...

  3. 如何保障地铁站运营安全?预警设备故障,教你一招

    大家都知道轨道交通的实效要求是特别的高一旦发生意外轻则是影响整个交通网络的时间调度,重则会引发严重的交通意外. 因此,不管是列车还是轨道机房都需要一个稳定的运行环境来保障我们的轨道交通的整体效率和安全 ...

  4. java工程师知识架构图图_阿里技术专家教你画架构图、Java 工程师成神之路 | 2019 年 2 月收藏排行...

    五一假期,头条君会推送 2019 年 1-4 月 开发者头条 上收藏最多的文章 点击链接或图片 即可阅读 喜欢请 分享到朋友圈 哦 Java 工程师成神之路(2019 正式版) 结构调整,更适合从入门 ...

  5. 数据库周刊28│开发者最喜爱的数据库是什么?阿里云脱口秀聊程序员转型;MySQL update误操作;PG流复制踩坑;PG异机归档;MySQL架构选型;Oracle技能表……

    文章来源:墨天轮社区 https://www.modb.pro/db/26343 摘要:墨天轮数据库周刊第28期发布啦,每周1次推送本周数据库相关热门资讯.精选文章.干货文档.本周分享 开发者最喜爱的 ...

  6. 阿里云服务器 搭建单体redis 以及踩坑

    在搭建阿里云服务器的过程中,踩坑很多,特写此文: 简介 Redis是一个开源(BSD许可),内存数据结构存储,用作数据库,缓存和消息代理.它支持数据结构,如字符串,散列,列表,集合,带有范围查询的排序 ...

  7. uniapp 引入阿里矢量图标库的详细步骤及踩坑经历

    uniapp 引入阿里矢量图标库的详细步骤及踩坑经历 首先在阿里矢量图标库选择自己喜欢的图标 加购物车如下图 点击右上角的购物车 添加到项目 这里有坑 首先你不选中在线链接 你是看不到 @font-f ...

  8. 阿里云天池【Docker练习场】踩坑指南

    阿里云天池[Docker练习场]踩坑指南 题目直达 提交环境搭建(基于macOS) Docker的安装与基本功能使用 Docker安装过程遇到的小问题 提交结果注意事项 提交时的镜像配置 项目结构规范 ...

  9. 阿里云服务器SSH远程连接与踩坑小记

    当你拥有了一台云服务器,就得去玩它,要玩它的话,远程连接就太重要啦,这篇文章就主要记录怎么实现远程连接阿里云服务器: 为什么要强调一下是阿里云服务器呢?自己配置的虚拟机一般就直接用户名+密码登录,但是 ...

最新文章

  1. 用户行为分析笔记(一):概述
  2. 青龙羊毛——去闲转(教程)
  3. 智能问答在金融领域中的实践与应用
  4. SendMessage 循环按1 到6 F1到F8_2
  5. 模型评估——定量分析预测的质量
  6. mysql性能结构优化原理_MySQL性能管理及架构设计(二):数据库结构优化、高可用架构设计、数据库索引优化...
  7. Linux系统【四】进程间通信-管道
  8. Linux Storage入门学习
  9. React redux
  10. 【C/C++】一篇文章教你区分数组指针指针数组
  11. 声源测向: TDOA-GCC-PATH方法
  12. linux+nginx搭建server与client通过证书双向认证环境
  13. android+开发平板应用,Android平板应用开发教程
  14. 11.HCNA-HNTD——文件系统基础
  15. java人员的宝贝:百宝箱。
  16. PySpark之电商广告推荐(1)
  17. 北京近期校园招聘java_JAVA研发工程师-校招,北京
  18. ps2遥控小车arduino程序初版
  19. Understanding unsupervised domain adaption
  20. 计算机系大二学期计划范文,大二学期学习计划范文6篇

热门文章

  1. linux命令 翻译,(翻译)Linux命令行(一)
  2. php 类常量用法,php类常量用法实例分析
  3. flink 写kafka_flink消费kafka的offset与checkpoint
  4. 8篇SCI,总影响因子46.464!这位博士,毕业后带着女友一起援疆!
  5. 开学典礼上,施一公寄语:西湖大学绝不允许任何形式的学术不端!
  6. “辩者21事”之解读——分析性理性要与辩证理性相结合
  7. 全球如何应对新冠大流行?科学子刊社论:数据驱动模型指导
  8. 投入100亿,一所新“交通大学”选址定了!校名却让网友吵翻…
  9. 位换记号、排列测试与状态图:杂耍中的数学
  10. 人工智能的本源与展望:从亚里士多德到平行智能