软件测试Bug和bug生命周期中的各种状态
软件测试Bug和bug生命周期中的各种状态
2016年07月03日 22:50:08 阅读数:5470
所有软件开发过程的目的都是为客户(软件产品的终端用户)提供一个解决问题的方案(软件产品),以帮助客户更加高效地工作或生活(从时间和费用上来讲)。一个成功的软件开发过程就是为客户提供了所有他所要求的需求。
一个没有软件测试的软件开发过程是不完善的。软件测试是为了寻找并修复软件中的bug/错误,它可以帮助提高软件的质量,以保证用户可以正常使用软件产品。
什么是一个bug/错误?
软件中的bug或者错误就是所有会影响软件整体或者部分功能的正常运行的软件行为。
怎样找到bug/错误?
我们主要依靠运行测试脚本或用例来找出那些软件产品中的不想看到的行为。
什么是测试用例?
测试用例是一类文档,测试用例中包含有用于执行的步骤或行为,而我们需要严格地按照这些步骤来执行以确认软件是否按照我们对它的期望执行。
发现bug或者错误后该怎么办?
一般在我们发现bug或者错误后,应该和开发人员交流以修复它。
从一个bug被发现到这个bug被关闭这一段时间,bug可能会有以下状态:new ,open Postpone,Pending Retest,Retest,Pending Reject,Reject,Deferred,closed.(请注意这里有很多种状态,我们需要根据不同情况来决定怎样或者是否需要跟开发人员沟通)
下面就对这几种状态进行以下解释:
New:(新的)
当某个“bug”被发现的时候(第一次),测试人员需要与项目负责人沟通以确认发现的的确是一个bug,如果被确认是一个bug,就将其记录下来,并将bug的状态设为New
Assigned(已指派的)
当一个bug被指认为New之后,将其将给开发人员,开发人员将确认这是否是一个bug,如果是,开发组的负责人就将这个bug指定给某位开发人员处理,并将bug的状态设定为“Assigned”
Open(打开的)
一旦开发人员开始处理bug的时候,他(她)就将这个bug的状态设置为“Open”,这表示开发人员正在处理这个“bug”
Fixed(已修复的)
当开发人员进行处理(并认为已经解决)之后,他(她)就可以将这个bug的状态设置为“Fixed”并将其提交给开发组的负责人,然后开发组的负责人将这个bug返还给测试组
Pending Reset(待在测试的)
当bug被返还到测试组后,我们将bug的状态设置为“Pending Reset”
Reset(再测试)
测试组的负责人将bug指定给某位测试人员进行再测试,并将bug的状态设置为“Reset”
Closed(已关闭的)
如果测试人员经过再次测试之后确认bug已经被解决之后,就将bug的状态设置为“Closed”
Reopen(再次打开的)
如果经过再次测试发现bug(指bug本身而不是包括因修复而引发的新bug)仍然存在的话,测试人员将bug再次传递给开发组,并将bug的状态设置为“Reopen”
Pending Reject(拒绝中)
如果测试人员传递到开发组的bug被开发人员认为是正常行为而不是bug时,这种情况下开发人员可以拒绝,并将bug的状态设置为“Pending Reject”
Rejected(被拒绝的)
测试组的负责人接到上述bug的时候,如果他(她)发现这是产品说明书中定义的正常行为或者经过与开发人员的讨论之后认为这并不能算作bug的时候,开发组负责人就将这个bug的状态设置为“Rejected”
Postponed(延期)
有些时候,对于一些特殊的bug的测试需要搁置一段时间,事实上有很多原因可能导致这种情况的发生,比如无效的测试数据,一些特殊的无效的功能等等,在这种情况下,bug的状态就被设置为“Postponed”
Deferred(延期的)
有些情况一些特殊的bug显得不那么重要,同时也是可以消除的,这个时候我们可以将bug的状态设置为“Deferred”
参考:http://www.51testing.com/html/30/n-106230.html
英文原文:http://www.buzzle.com/editorials/4-6-2005-68175.asp
如需转载,请与译者联系chdwu@bestreme.com
软件测试Bug和bug生命周期中的各种状态相关推荐
- Bug 生命周期 中的 各个状态!
从一个bug被发现到这个bug被关闭这一段时间,bug可能会有以下状态:new ,open Postpone,Pending Retest,Retest,Pending Reject,Reject,D ...
- bug生命周期的几个状态
BUG 生命周期中的各个状态 从一个bug被发现到这个bug被关闭这一段时间,bug可能会有以下状态: new ,open Postpone,Pending Retest,Retest,Pending ...
- 软件开发生命周期中的设计阶段_什么是软件生命周期模型?软件测试和软件开发的关系分析!...
软件生命周期这个词,对于大部分人应该比较陌生,但却不容忽视!正因为它的重要性,才有许多不同的软件开发生命周期模型,但是它们都有一个共同的特点,那就是在生命周期中的某一时刻,软件都会被测试.今天我就和大 ...
- 深圳软件测试培训:软件生命周期(SDLC)的六个阶段
深圳软件测试培训:软件生命周期(SDLC)的六个阶段 1.问题的定义及规划 此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性. 2.需求分析 在确定软件开发可行的情况下,对软件需要 ...
- vue函数如何调用其他函数?_从源码中学Vue(一)生命周期中的钩子函数的那点事儿...
欢迎来到我的<从源码中学Vue>专题系列文章,更多精彩内容持续更新中,欢迎关注 :) Vue作为当下前端最流行的框架之一,在国内占绝对的优势.所以接下来我们一起来学习它吧! 我不会像其它人 ...
- [react] react中发起网络请求应该在哪个生命周期中进行?为什么?
[react] react中发起网络请求应该在哪个生命周期中进行?为什么? 异步情况可以在componentDidMount()函数中进行. 同步的情况可以在componentWillMount()中 ...
- [vue] vue在created和mounted这两个生命周期中请求数据有什么区别呢?
[vue] vue在created和mounted这两个生命周期中请求数据有什么区别呢? 看实际情况,一般在 created(或beforeRouter) 里面就可以,如果涉及到需要页面加载完成之后的 ...
- 软件开发生命周期中的设计阶段_软件过程模型|如何进行团队式的软件开发?...
0.个人与团队 看看老师给的作业要求,想想要用什么编译器什么语言编写,然后直接打开电脑开干--这几乎是我们每一个在校的计算机学生做软件开发时的常见思路.这种思路对于个人开发而言,并没有什么错误,然而当 ...
- Pod生命周期中的状态解释
1.前言 之前了解到kubectl get pod的时候可以看到status列会有Running CrashLoopBackOff等状态,于是就想了解一下到底有多少种状态,并且代表了什么意思,但经过查 ...
最新文章
- SAP MM 如何通过SAP User ID拿到User的基本信息?
- 使用友盟的社会化组件,发新浪微博的 error:redirect_uri_mismatch的解决方法
- 【中级软考】PV操作是什么?(passeren【通过、申请资源、减量】、vrijgeven【释放、释放资源、增量】【荷兰文】)(用于进程间同步)
- 十大排序算法之插入排序
- Java盲点:双重检查锁定及单例模式
- 新版本IntelliJ IDEA 构建maven,并用Maven创建一个web项目
- 从贝叶斯公式到垃圾邮件的识别
- 吴恩达新书手稿完工,现在开放免费下载 | 资源
- Java Switch语句及性能剖析(转载补充)
- 数据结构(6)----栈与队列之栈的链式存储结构及其实现
- Hyper-V 之04 SCVMM 2012 R2安装
- 服务器与客户端的简单实现
- 信息系统项目管理师 pdf_关于系统集成项目管理工程师和信息系统项目管理师的区别...
- 线性混合效应模型学习
- 问道阿里云吴翰清 浅谈互联网安全机制
- 设置路由器虚拟服务器拦截广告,路由器怎么安装防火墙?拦截病毒广告就这么简...
- 静态HTML网页设计作品 仿唯品会购物商城(5页) HTML+CSS+JavaScript 学生DW网页设计作业成品 商城网站设计
- Citus集群拓扑架构介绍
- 消息队列的使用场景是什么样的?
- 累计投放贷款1000亿,马云是如何做银行的?