热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

Bug报告提交规范

首先声明,bug的测试规范应该在公司的正式文档建立。本建议非正式文档,有些内容可能不正确,有些内容可能需要继续商榷,甚至有些内容同公司规范有冲突。如果发现问题,直接忽略本文相应内容。本帖本意仅就工作中

首先声明,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线的瑕疵。
建议人力资源部在入职考试中加入连连看测试和成绩入档案。





推荐阅读
  • 数字账号安全与数据资产问题的研究及解决方案
    本文研究了数字账号安全与数据资产问题,并提出了解决方案。近期,大量QQ账号被盗事件引起了广泛关注。欺诈者对数字账号的价值认识超过了账号主人,因此他们不断攻击和盗用账号。然而,平台和账号主人对账号安全问题的态度不正确,只有用户自身意识到问题的严重性并采取行动,才能推动平台优先解决这些问题。本文旨在提醒用户关注账号安全,并呼吁平台承担起更多的责任。令牌云团队对此进行了长期深入的研究,并提出了相应的解决方案。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • Google在I/O开发者大会详细介绍Android N系统的更新和安全性提升
    Google在2016年的I/O开发者大会上详细介绍了Android N系统的更新和安全性提升。Android N系统在安全方面支持无缝升级更新和修补漏洞,引入了基于文件的数据加密系统和移动版本的Chrome浏览器可以识别恶意网站等新的安全机制。在性能方面,Android N内置了先进的图形处理系统Vulkan,加入了JIT编译器以提高安装效率和减少应用程序的占用空间。此外,Android N还具有自动关闭长时间未使用的后台应用程序来释放系统资源的机制。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • HTML学习02 图像标签的使用和属性
    本文介绍了HTML中图像标签的使用和属性,包括定义图像、定义图像地图、使用源属性和替换文本属性。同时提供了相关实例和注意事项,帮助读者更好地理解和应用图像标签。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 使用正则表达式爬取36Kr网站首页新闻的操作步骤和代码示例
    本文介绍了使用正则表达式来爬取36Kr网站首页所有新闻的操作步骤和代码示例。通过访问网站、查找关键词、编写代码等步骤,可以获取到网站首页的新闻数据。代码示例使用Python编写,并使用正则表达式来提取所需的数据。详细的操作步骤和代码示例可以参考本文内容。 ... [详细]
  • 深入理解CSS中的margin属性及其应用场景
    本文主要介绍了CSS中的margin属性及其应用场景,包括垂直外边距合并、padding的使用时机、行内替换元素与费替换元素的区别、margin的基线、盒子的物理大小、显示大小、逻辑大小等知识点。通过深入理解这些概念,读者可以更好地掌握margin的用法和原理。同时,文中提供了一些相关的文档和规范供读者参考。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • 本文介绍了获取关联数组键的列表的方法,即使用Object.keys()函数。同时还提到了该方法在不同浏览器的支持情况,并附上了一个代码片段供读者参考。 ... [详细]
  • 本文由编程笔记小编整理,主要介绍了使用Junit和黄瓜进行自动化测试中步骤缺失的问题。文章首先介绍了使用cucumber和Junit创建Runner类的代码,然后详细说明了黄瓜功能中的步骤和Steps类的实现。本文对于需要使用Junit和黄瓜进行自动化测试的开发者具有一定的参考价值。摘要长度:187字。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
author-avatar
尖塔顶的Cat
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有