首先声明,bug的测试规范应该在公司的正式文档建立。
本建议非正式文档,有些内容可能不正确,有些内容可能需要继续商榷,甚至有些内容同公司规范有冲突。如果发现问题,直接忽略本文相应内容。
本帖本意仅就工作中的一些现象记录,可以通过简单规范让大家工作轻松,高效。
后续继续补充修改,也请大家补充修改。

其次,本帖也仅就填写bug报告的行为进行了一些梳理和建议,不能取代正式的bug测试流程或质量管理过程。

内容:

填写bug报告,可能是专门的测试人员或者开发人员,甚至其他临时帮忙或者最终用户。
发现bug和解决bug是一件非常重要的工作。大家的目的都是为了软件能够安全、稳定运行起来,提交bug的人同解决bug的人目标是一致的,而不是对立的,不是找麻烦。

测试工作其实非常复杂和繁重,发现问题仅仅是第一步,更重要的是确定是bug,是不是可以重现,跟正确结果的差别在哪里。
最终提交的bug不要让修复者重复太多工作才能重现,也不要让修复者猜测或者试验力。最快让修复者找到问题是关键。
如果修复者花费太长时间琢磨一个bug报告的重现,最好还是直接演示给他看,这是最有效的方式。

基于这些共识,我们希望达成一致的规范。

提交者规范建议:

1.
提交bug是针对真实存在的缺陷。那些偶尔出现的bug,提交者尽量找到重现的真正原因。如果可能,尽量在2个不同终端上可以确定重现。如果没有2台终端,至少用2种浏览器或者2个虚拟机等方式模拟重现出来。
2.
如果是浏览器兼容问题,确定重现步骤后,bug报告中尽量写清哪个类型浏览器,版本号,语言,以及设置方式。
3.
描述清楚。有些bug是需求没有满足,但是没有其他崩溃结果哦出现,尽量将“期待”的内容和“实际”的情形区别开,
如,一个bug,一个按钮点击后的“需求”是打开窗口,实际运行结果是转到另外一个地址。转移地址是错误的,就要告诉修复者。
而不是报告:这个点击按钮后转到了一个新地址。
修复者有时理解成需求是要转移到一个新地址,结果他看到的就是这个结果。修复这可能要仔细对照需求说明书,才能知道这是一个错误。他记忆中的需求可能就是转移到一个新地址。
建议写成:“需求”是打开窗口,“当前”的bug是转到另外一个地址。

4.
缩小范围。如果能将bug出现定位在一个确定的范围,则减少了重现和定位的重复工作,也更加清晰bug的关键内容。
如,bug报告中如果是这样一条报告,修复者会是一脑门子汗。
论坛网站上不去!
这个bug的范围太广泛。有如下几种具体bug都可以说成是网站上不去。

内网能上,外网不能上。
用IE浏览器可以上,用chrome不能上
网站的页面打不开,一直等待
网站的页面打开了报错,全部英文,不能显示有用文字。
网站的网页可以打开,但是没有登录的部分。
网站登录框正确填写用户名口令后,还是提示“用户名密码不能验证通过”
网站登录框正确填写用户名口令后,无反应。
网站登录框正确填写用户名口令后,页面变成错误信息。

所以,bug报告也是有质量的,要有质,而不是量。这也正式测试人员不能以bug数量计算工作量的原因。

5.
如果界面的一些细小问题,请将你发现的问题截图。截图后,一定要用明显标记的方式,指出错误所在。
如果有可能,将正确的截图也提供出来,而且也明显标记出对应的位置。

6.
多个关联的bug,尽量将每一个bug单独提交,并且通过bugfree进行明确的关联。缺陷的分解也体现测试者的工作到位。

修复者规范建议:
1.
尊重bug提交者的劳动,认真对待每一个bug。
2. 如果有不清楚的bug报告,尽快联系提交者,以便重现bug,意见达成一致。
3.
如果属于其他人的问题,尽快转发。
4.
多练“找不同”、“找茬儿”、“连连看”之类的游戏,提高眼力。尤其是几面中一个像素或者1px线的瑕疵。
建议人力资源部在入职考试中加入连连看测试和成绩入档案。

Bug报告提交规范的更多相关文章

  1. 利用shell脚本生成CHANGELOG.md(包含git提交规范)

    前言 我们经常看到github上面有很多CHANGELOG.MD包含版本的更新信息,如果我们的git提交能遵循一定的规范,那么使用gitlog就能很方便的生成它 生成结果  shell脚本 http ...

  2. 编写优秀Bug报告的艺术及案例分析

    编写优秀Bug报告的艺术及案例分析 ---Rex Black原著<Fine art of writing a good bug report > ---Kiki翻译于2005/5/28 前 ...

  3. git 提交规范

    git 提交规范 前言 无规矩不成方圆,编程也一样. 如果你有一个项目,从始至终都是自己写,那么你想怎么写都可以,没有人可以干预你.可是如果在团队协作中,大家都张扬个性,那么代码将会是一团糟,好好的项 ...

  4. 关于Git提交规范

    自古至今,无规矩不成方圆. Git提交也有其规范,业内做的比较好的,比较具有参考价值的就是Angular的提交. Angular提交规范: <type>(<scope>): & ...

  5. 开发中的你的Git提交规范吗?

    1. 前言 目前大部分公司都在使用Git作为版本控制,每个程序员每天都要进行代码的提交.很多开发者也包括我自己,有时候赶时间或者图省事,就这么提交: git commit -m "修改bug ...

  6. 前端规范之Git提交规范(Commitizen)

    代码规范是软件开发领域经久不衰的话题,几乎所有工程师在开发过程中都会遇到或思考过这一问题.而随着前端应用的大型化和复杂化,越来越多的前端团队也开始重视代码规范.同样,前段时间,笔者所在的团队也开展了一 ...

  7. phalcon做日报告提交平台总结

    总结:通过开发日报告提交系统,掌握了基本的phalcon框架原理和PHP语言.也了解了一些linux常用指令,收获颇丰. 下面对项目中所遇到的问题进行总结: 1.前台数据传往后台所用的三种方法: (1 ...

  8. 项目工程化之git提交规范以及 CHANGELOG生成

    事先声明,本文是参考了其他大神的博客之后自己尝试的记录,具体可以参考如下 链接 先说说git 提交规范把,这里基本都是这个工具 cz-customizable 1,安装 npm install cz- ...

  9. Approach for Unsupervised Bug Report Summarization 无监督bug报告汇总方法

    AUSUM: approach for unsupervised bug report summarization 1. Abstract 解决的bug被归类以便未来参考 缺点是还是需要手动的去细读很 ...

随机推荐

  1. nohup 后台运行命令

    在Linux上部署zipkin,在SSH客户端执行java -jar zipkin-server-1.21.0-exec.jar,启动成功,在关闭SSH客户端后,运行的程序也同时终止了,怎样才能保证在 ...

  2. Oracle Database PSU/CPU

    1. 什么是PSU/CPU?CPU: Critical Patch UpdateOracle对于其产品每个季度发行一次的安全补丁包,通常是为了修复产品中的安全隐患. PSU: Patch Set Up ...

  3. OpenCL 前缀和

    ▶ 向量前缀和 ● 最简单的版本,代码 #include <stdio.h> #include <stdlib.h> #include <cl.h> const c ...

  4. Thrift分析

    [Thrift分析] Thrift定义一套IDL(Interface Definition Language)用于描述接口,通常后缀名为.thrift,通过thrift程序把.thrift文件导出成各 ...

  5. 介绍MVC编程架构模式

    MVC(Model/View/Controller)模式是国外用得比较多的一种框架模式,最早是在Smaltalk中出现.MVC包括三类对象. Model——是应用对象 View——是它在屏幕上的表示 ...

  6. CTC 的工作原理

    CTC 的工作原理     Fig. 1. How CTC  combine a word (source: https://distill.pub/2017/ctc/) 这篇文章主要解释CTC 的工 ...

  7. 温(Xue)习排序算法

    最近忙着找工作,虽然排序算法用得到的情况不多,但不熟悉的话心里始终还是感觉没底. 于是今天给温习了其中的四个排序算法(与其说是温习,不如说是学习...因为感觉自己好像从来木有掌握过它们...) 一.选 ...

  8. Java核心技术-泛型程序设计

    使用泛型机制编写的代码要比那些杂乱地使用Object变量,然后再进行强制类型转换的代码具有更好的安全性和可读性. 泛型对于集合类尤其有用 1 为什么要使用泛型程序设计 泛型程序设计意味着编写的代码可以 ...

  9. 35-Python - 去除list中的空字符

    https://www.cnblogs.com/yspass/p/9434366.html list1 = ['122', '2333', '3444', '', '', None] a = list ...

  10. udp调优经验

    降低丢包率: 1. 增大输入输出缓冲区 2. 调用发送接口时增大单次发送的buffer大小 8k 3. 多个socket 多线程接收 4 发送端流量控制,并且保证发送速率均匀 降低时延: 减小包大小? ...