51Testing软件测试论坛
标题:
降低软件测试后遗漏Bug的风险
[打印本页]
作者:
yiyi820106
时间:
2007-4-19 13:48
标题:
降低软件测试后遗漏Bug的风险
尽管软件经过了测试员的测试,但是软件发布后,用户仍然会发现一些Bug,软件公司收到客户的质量抱怨,很多人士都将这一切错误怪罪到测试人员的工作疏忽,尽管这有一定的道理,但是,光让测试员自己“背黑锅”其实是有失公正的。
分析这些遗漏的Bug的特征,检查软件测试、开发、项目管理流程,可以在今后的软件项目中积累经验。
为什么软件测试后会遗漏Bug?主要来自以下四种情形:
(1)软件测试用例设计不完整,测试覆盖率不高。客户偶然执行了软件的某些操作,而这些操作没有被测试员测试到。
(2)测试员过分依赖程测试说明书,机械地执行测试。由于测试人员可能是新手,他们完全按照测试说明书执行测试,忽略了使用程序中输入变量的边界值进行测试,而用户正好使用了边界值进行操作。
(3)测试环境和用户的使用环境不一致。虽然在测试人员的测试环境中软件不会有错误,但是如果用户的使用环境与测试环境不一致,将会发现新的Bug。这在软件的离岸外包测试中经常出现。
(4)测试发现的软件Bug没有被正确处理。如果开发人员没有及时、正确地处理测试发现的Bug,忽略了一些Bug,而想当然地认为新的Build中这些Bug已经被修正了,就会带来Bug隐患。
针对以上遗漏Bug的特征,可以找出对应的防范措施,降低软件测试后遗漏Bug的风险。
(1)设计覆盖率高的测试用例。将客户最经常使用的功能写入测试用例,可以参照用户需求说明书创建测试用例。
(2)测试人员提高测试能力,既要测试输入变量的正常值,也要测试边界值和非正常值。采用等价类和边界值测试相结合的方法测试。
(3)保持测试环境和用户使用环境的一致性。用户需求说明书中通常包括软件的运行环境,测试环境应该保持一致,或者采用一些测试工具来模拟或仿真用户的使用环境。
(4)规范Bug的处理和跟踪流程。只有测试人员才有权关闭Bug跟踪数据库的Bug,开发人员只负责确认和修正Bug。在软件发布之前,确保满足发布条件,例如功能Bug全部被处理,其他Bug数量在发布条件允许范围内。
最后,由于软件测试是一种被动的软件质量保证活动,软件测试只能证明软件存在Bug,无法发现全部的Bug,而且由于测试时间、人员、成本的原因,软件测试的深度和广度都是有限的,软件测试后遗漏Bug属于预料之中。理解用户使用需求,加强测试用例设计,提高测试技术水平,优化Bug管理流程,将可以使软件测试后遗漏的Bug降低到最小程度。
作者:
yiyi820106
时间:
2007-4-19 13:49
sdlkfj2 ,共勉.
作者:
wangjianrui
时间:
2007-4-19 14:11
理解sdlkfj2
作者:
wangjianrui
时间:
2007-4-19 14:11
怎么我的积分又少了呀?
作者:
yiyi820106
时间:
2007-5-9 16:03
sdlkfj4
作者:
celamethyst
时间:
2007-5-12 09:52
那问一下,如果真的出现了这种情况,到底该是谁的责任??(曾经面试的时候一个面试人员问我的,刚开始的时候,我说这个不能怪谁,毕竟人无完人,有错误是再所难免的,可是他还是逼问我到底属于谁的责任,我又说这个应该在测试计划的时候就先讨论好的,然后他还是逼问我到底属于谁的责任,最后...sdlkfj9 ) 到底该答什么?
作者:
rainyday32
时间:
2007-5-14 15:09
有些测试用例是不可能完全覆盖到所有情况的,功能测试就是看看其功能是否正确,但是有些错误的情况呢?我们不能在事先就想到所有的可能出错的情况阿~
作者:
yiyi820106
时间:
2007-5-14 15:20
标题:
回复 #9 rainyday32 的帖子
好象没有人敢说他的测试用例完全覆盖到了所有情况
都是一边测试一边完善用例的
很时候发到用户那边后还会不断反馈回来问题
作者:
yiyi820106
时间:
2007-6-12 11:46
永远找不完的就是臭虫。。。sdlkfj8
作者:
我的品牌ccc
时间:
2007-6-12 12:16
说的好,但这个责任到底是谁的??
作者:
wangs
时间:
2007-6-12 13:41
根据以上两种情况,责任1.2.3必须由测试人员承担.4由测试人员与bug责任者共同承担.首先一.覆盖率问题,的却bug是永远的存在的,但是覆盖率却是测试人员的工作,很多项目由于时间,人员等等客观条件,在没有重大问题的情况下就发布出去,这样测试的覆盖率会很低.值得理解 二.例如边界值等这类错误,应该由测试人员直接承担起这个责任.因为这累测试在某些情况是不应该被忽略的 .三.同二一样,环境问题也是测试人员必须考虑的,不然出现错误那就是严重的bug.四.开发人员的责任在于他没有认真的对待这个问题,而直接发布,但是测试人员是必须做回归测试,以验证这个bug已经解除,这个是软件发布的一个流程问题..
作者:
yiyi820106
时间:
2007-6-15 10:13
鼓掌。。。
作者:
shenwenhai
时间:
2007-6-15 11:23
好,学习中
作者:
uruuru
时间:
2007-6-15 11:31
能影响这个的因素太多了:
开发人员水平不高,造成BUG太多,总会有漏网的
公司本身流程就有问题,需求跟踪,缺陷跟踪没做好的话就容易遗漏
项目进度太紧,身心疲惫,造成测试执行质量下降
根据测试理论有5%的BUG在RELEASE前是不可能被发现的。有BUG遗漏很正常,关键不要有重大BUG遗漏
作者:
yiyi820106
时间:
2007-6-19 11:56
呵呵,楼上的说的有道理sdlkfj2
作者:
yangningwkq
时间:
2007-6-19 14:45
有些是不能想到客户是怎么使用的。我们是用正确的方法使用软件,客户不了解软件也许会误操作呢。
作者:
wangs
时间:
2007-6-19 21:24
为什么会有误操作,因为你的软件不够完美.缺陷太多.
作者:
我的品牌ccc
时间:
2007-6-19 22:11
学习学习
作者:
文心
时间:
2007-6-19 23:49
学习了
作者:
mc309
时间:
2007-6-20 10:47
别人不知道,反正我自己做测试的话边界值是一定不回遗漏的~~~~~~
sdlkfj3
作者:
lesterfisher
时间:
2007-6-20 10:56
标题:
回复 #4 wangjianrui 的帖子
那是因为你在论坛下载东西了
作者:
yiyi820106
时间:
2007-6-25 17:38
个人认为客户没有所谓的误操作
那是软件漏洞所造成的结果
作者:
yiyi820106
时间:
2007-6-26 10:25
我认为客户不存在误操作的问题
只能说是软件漏洞
作者:
wangs
时间:
2007-7-3 12:23
对于客户而言是没有误操作的,所谓的误操作只是开发的bug罢了..
马云有一段话:因为我说的话代表世界上80%不懂技术的人,他们做完测试,我就进去去用,我不想看什么说明书,如果我不会用就仍掉。
其实这句话也说明了什么样的软件才会被普通人接受。我们要做的是能给80%那部分人用的而不是20%那部分。
作者:
lizhm
时间:
2007-7-3 13:33
学习了.
我们是要用技术去实现 让人用起来就觉得简单的功能.
sdlkfj2
作者:
spring279
时间:
2007-7-3 14:37
我觉得还是平时多用用,这样在实际的使用过程中可以发现在测试时所没发现的BUG
作者:
ycatula
时间:
2007-7-4 09:29
[quote]原帖由
wangs
于 2007-7-3 12:23 发表
对于客户而言是没有误操作的,所谓的误操作只是开发的bug罢了..
马云有一段话:因为我说的话代表世界上80%不懂技术的人,他们做完测试,我就进去去用,我不想看什么说明书,如果我不会用就仍掉。
这句话说的好.
作者:
yiyi820106
时间:
2007-7-30 08:57
[quote]原帖由 wangs 于 2007-7-3 12:23 发表
对于客户而言是没有误操作的,所谓的误操作只是开发的bug罢了..
鼓掌...
作者:
119139107
时间:
2007-7-30 09:21
对于客户而言是没有误操作的,所谓的误操作只是开发的bug罢了..
确实有道理
学习中。。。
鼓掌支持一下
作者:
linmi_010
时间:
2007-8-11 16:43
学习
作者:
changlang530
时间:
2007-8-14 14:14
支持支持
作者:
luhf0129
时间:
2007-11-21 13:46
原帖由
yiyi820106
于 2007-6-26 10:25 发表
我认为客户不存在误操作的问题
只能说是软件漏洞
没有错误的用户,只有错误的软件..........
作者:
xxjgogogo
时间:
2007-11-21 14:04
测试用例理论上不可能100%覆盖功能的,只能不断地完善和补充。
楼上的,用户对于软件来说也不是完全正确的,有的问题需要跟用户沟通的,并不一定是软件的错误!
作者:
yiyi820106
时间:
2008-3-30 14:07
呵呵,
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2