Bug是一种财富-------研发同学的错题集、测试同学的遗漏用例集
此文已由作者王晓明授权网易云社区发布。
欢迎访问网易云社区,了解更多网易技术产品运营经验。
各位看官,可能看到标题的你一定认为这是一篇涉嫌“炒作”的文章,亦或是为了吸引眼球而起的标题,恭喜你猜对了一半,确实是为了吸引大家的关注而起的这个标题,不过不是为了“炒作”而只是为了让更多人关注bug,重视bug,从而挖掘bug的潜在价值--技术团队的财富。
Bug一词估计也只有相关从业人员才会比较了解,我想了解它的人没有一个不讨厌它的。这一点从给它起的名字就可以看出来,“bug”翻译成中文就是“虫子”,大家对虫子第一影响就是厌恶,所以没人喜欢它是人之常情,今天我们却要走相反的路线,好好的“夸一夸”令大家都不爽的“虫子”。
研发人员的“错题集”--bug追踪记录
说道错题集估计大家都不陌生,但凡热爱学习(关注成绩)的同学可能都有自己的“武林秘籍”--考试或者练习测验中做错的题目。通过对这本武林秘籍中的题目进行针对性的练习,来减少重复踩坑带来的分数损失。对于研发同学在研发阶段产生的bug和线上出现的事故,我们也可以做个类比,把它们称为研发同学的“错题集”。对于研发同学如何对待这本“错题集”,不仅仅关乎软件代码质量的提高,更关乎个人技能的持续成长。如何让一个人不重复犯同一类错误,如何让一个团队不重复踩相同的“技术坑 ”,如何把团队付出昂贵代价积累下的经验传承下来,一直都是技术管理者头疼的问题。那“研发团队错题集”不失是一种可行的方案,通过实际的bug案例,产生的原因、造成的影响、如何避免类似问题的产生,可以让新来的同学迅速继承以前趟过的坑。我认为对技术团队来说,技术积累大致可以分为两类,“成功案例”和“失败教训”,我认为失败教训对其他团队的参考意义更大,因为相对于成功来说,失败有更大的普适性。综上,认真对待自己犯过的“错误”,把它当做持续提高自己的“训练集”,既能完成软件代码质量的不断提高,又能让研发团队整体战斗力持续提升,你说它是不是一笔“财富”。
测试人员的“遗漏用例集”--非用例执行bug记录和在线bug记录
如果你认为bug只是针对研发同学的,那就大错特错了。对于测试同学bug也是一种“财富”,这不仅仅体现在“工作量”上,更体现在后续根据bug不断改进用例设计方法的实战经验上。相信测试同学大部分会有这样的经历。
经历A:
一期需求中辛辛苦苦准备了很多用例,开发提测后按照用例执行一遍发现没有发现几个bug,于是基于职业敏感,开始又一轮的探索性测试,又发现很多bug,甚至比通过用例发现的bug还要多,于是提出“设计测试用例无用论”。(私下认为,应该是设计用例的方法有问题,需要改进设计用例的方法,并推广之,让更少的同学经历A事件)
经历B:
辛辛苦苦熬到需求上线,发布不久出现线上故障,紧急回滚或者紧急线上修复,所有事情都忙完后,开始准备线上故障报告,包括故障原因,开始时间,修复时间,解决方法,后续避免措施,怀着忐忑的心情结束一天的工作。
其实经历A、B本质上讲都是由于用例设计不充分导致的,在互联网敏捷发布、持续交付的大环境下,如何更好更快的设计更加全面的测试用例是测试同学需要不断追求的,而bug集恰恰是最好的“场景数据”,从这个角度讲我想大家也都认为bug是一种财富。
bug不仅是软件研发中发生的错误,同时也是帮助大家技能持续成长的一种财富,如何把这种潜在资产的价值发挥出来,是研发团队需求不断探索和实践的。
网易云免费体验馆,0成本体验20+款云产品!
更多网易技术、产品、运营经验分享请点击
相关文章:
【推荐】 Android优化之内存优化倒计时篇
Bug是一种财富-------研发同学的错题集、测试同学的遗漏用例集的更多相关文章
- [每日电路图] 7、设计一个PCB的流程及细节·总结——给外行的同学或刚入行的同学一个宏观鸟瞰电路板设计的大致流程的文章
前言 最近两天使用AD14软件设计了一个蓝牙防丢器电路板(PCB)图纸,中间有一些细节在本文中记录下,方便下次设计PCB时参考.也希望能给外行的同学或刚入行的同学一个宏观鸟瞰电路板设计的大致流程的文章 ...
- centos LB负载均衡集群 三种模式区别 LVS/NAT 配置 LVS/DR 配置 LVS/DR + keepalived配置 nginx ip_hash 实现长连接 LVS是四层LB 注意down掉网卡的方法 nginx效率没有LVS高 ipvsadm命令集 测试LVS方法 第三十三节课
centos LB负载均衡集群 三种模式区别 LVS/NAT 配置 LVS/DR 配置 LVS/DR + keepalived配置 nginx ip_hash 实现长连接 LVS是四层LB ...
- 阿里云移动研发平台 EMAS 助力银行业打造测试中台,提升发版效能
随着移动互联网的发展,手机银行凭借低成本.操作简单.不受时间空间约束等优势,正逐步替代传统的网银交易方式.越来越多的银行开始了“业务移动化”转型之路,“手机APP”已经成为企业价值传递和关系维护的关键 ...
- 测试同学难道要写一辈子的hello world?
最近我们在测试团队内推行自动化用例责任制,大致的意思是:我们安排培训资源,提供技术支持和一对一辅导,要求每一个自主选择了自动化和接口测试发展通道的同学必须让自己负责的项目自动化用例覆盖率有所提升. 后 ...
- Apache shiro集群实现 (八) web集群时session同步的3种方法
Apache shiro集群实现 (一) shiro入门介绍 Apache shiro集群实现 (二) shiro 的INI配置 Apache shiro集群实现 (三)shiro身份认证(Shiro ...
- Android JSON原生解析的几种思路,以号码归属地,笑话大全,天气预报为例演示
Android JSON原生解析的几种思路,以号码归属地,笑话大全,天气预报为例演示 今天项目中要实现一个天气的预览,加载的信息很多,字段也很多,所以理清了一下思路,准备独立出来写一个总结,这样对大家 ...
- 测试的发现遗漏BUG的做法
首先要确认BUG的影响范围: 后续做法如下: 1.从测试角度来说,外部缺陷等同与系统崩溃,测试是必须提的2.可以询问主管或负责人是否在后一个版本中修改3.评估缺陷对于用户使用存在多大的不便4.判定缺陷 ...
- Eclipse调试Bug的七种常用技巧(转)
注意事项及小结: (1)Line Breakpoint:如果设置Conditional,监控的变量需要比当前行高一级block,譬如for(int i=0;i<20;i++)中的i,fo ...
- Eclipse调试Bug的七种常用技巧
1. 条件断点 断点大家都比较熟悉,在Eclipse Java 编辑区的行头双击就会得到一个断点,代码会运行到此处时停止. 条件断点,顾名思义就是一个有一定条件的断点,只有满足了用户设置的条件,代码才 ...
随机推荐
- 贪心,Gene Assembly,ZOJ(1076)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=76 解题报告: 1.类似活动安排问题. 2.输出格式要注意. #inc ...
- 【转】有关onpropertychange事件
<div style="border:1px solid #fc0;height:24px;width:300px;" id="target">&l ...
- 关于node-sass安装失败的解决办法
在测试gulp-webapp的时候遇到了 styles 不能被正常编译的问题,究其原因是node-sass没有被正常安装. 根本原因是国内网络的原因. 最终的解决方法是通过淘宝的npm镜像安装node ...
- 【洛谷P1978】 集合
集合 题目链接 显然,我们是要把数据先排序的, 然后从大到小枚举每个数,看是否能选上, 能选就选,不能拉倒 若能,二分查找a[i]/k,若查找成功,ans++ 将a[i]/k标记为不能选择 最后输出答 ...
- scala容器使用
花了两个小时左右,学习了一下scala语言, 由于scala运行在jvm之上, 可以使用java容器也可以使用scala自带的容器. import java.util import java.util ...
- MYSQL添加外键关联
SELECT * from stu st,course co,score sc where st.sid = sc.sid and sc.cid = co.cid 如果我们要给 sid 做一个约束,即 ...
- Spring知识点总结(二)之Spring IOC
1.创建bean类,并在spring中进行配置交由spring来管理1. IOC(DI) - 控制反转(依赖注入) 所谓的IOC称之为控制反转,简单来说就是将对象的创建的权利及对象的生命周期的管 ...
- 分布式压测系列之Jmeter4.0第一季
1)Jmeter4.0介绍 jmeter是个纯java编写的开源压测工具,apache旗下的开源软件,一开始是设计为web测试的软件,由于发展迅猛,现在可以压测许多协议比如:http.https.so ...
- Python基础—15-正则表达式
正则表达式 应用场景 特定规律字符串的查找替换切割等 邮箱格式.URL.IP等的校验 爬虫项目中,特定内容的提取 使用原则 只要是能够使用字符串函数解决的问题,就不要使用正则 正则的效率较低,还会降低 ...
- CALayer层的属性(转)
一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint position: (1)用来设置CALayer在父层中的 ...