软件测试用例的认识误区

软件测试用例是为了有效发现软件缺陷而编写的包含测试目的、测试步骤、期望测试结果的特定集合。正确认识和设计软件测试用例可以提高软件测试的有效性,便于测试质量的度量,增强测试过程的可管理性。

在实际软件项目测试过程中,由于对软件测试用例的作用和设计方法的理解不同,测试人员(特别是刚从事软件测试的新人)对软件测试用例存在不少错误的认识,给实际软件测试带来了负面影响,本文对这些认识误区进行列举和剖析。

误区之一:测试输入数据设计方法等同于测试用例设计方法

现在一些测试书籍和文章中讲到软件测试用例的设计方法,经常有这样的表述:测试用例的设计方法包括:等价类、边界值、因果图、错误推测法、场景设计法等。这种表述是很片面的,这些方法只是软件功能测试用例设计中如何确定测试输入数据的方法,而不是测试用例设计的全部内容。

这种认识的不良影响可能会使不少人认为测试用例设计就是如何确定测试的输入数据,从而掩盖了测试用例设计内容的丰富性和技术的复杂性。如果测试用例设计人员把这种认识拿来要求自己,则害了自己;拿来教人,则害了别人;拿来指导测试,则害了测试团队。听起来似乎是“小题大做”,但是绝不是“危言耸听”。

无疑,对于软件功能测试和性能测试,确定测试的输入数据很重要,它决定了测试的有效性和测试的效率。但是,测试用例中输入数据的确定方法只是测试用例设计方法的一个子集,除了确定测试输入数据之外,测试用例的设计还包括如何根据测试需求、设计规格说明等文档确定测试用例的设计策略、设计用例的表示方法和组织管理形式等问题。

在设计测试用例时,需要综合考虑被测软件的功能、特性、组成元素、开发阶段(里程碑)、测试用例组织方法(是否采用测试用例的数据库管理)等内容。具体到设计每个测试用例而言,可以根据被测模块的最小目标,确定测试用例的测试目标;根据用户使用环境确定测试环境;根据被测软件的复杂程度和测试用例执行人员的技能确定测试用例的步骤;根据软件需求文档和设计规格说明确定期望的测试用例执行结果。

误区之二:强调测试用例设计得越详细越好

在确定测试用例设计目标时,一些项目管理人员强调测试用例“越详细越好”。具体表现在两个方面:尽可能设计足够多的设计用例,测试用例的数量阅读越好;测试用例尽可能包括测试执行的详细步骤,达到“任何一个人都可以根据测试用例执行测试”,追求测试用例越详细越好。

这种做法和观点最大的危害就是耗费了很多的测试用例设计时间和资源,可能等到测试用例设计、评审完成后,留给实际执行测试的时间所剩无几了。因为当前软件公司的项目团队在规划测试阶段,分配给测试的时间和人力资源是有限的,而软件项目的成功要坚持“质量、时间、成本”的最佳平衡,没有足够多的测试执行时间,就无法发现更多的软件缺陷,测试质量更无从谈起了。

编写测试用例的根本目的是有效地找出软件可能存在的缺陷,为了达到这个目的,需要分析被测试软件的特征,运用有效的测试用例设计方法,尽量使用较少的测试用例,同时满足合理的测试需求覆盖,从而达到“少花时间多办事”的效果。

测试用例中的测试步骤需要详细到什么程度,主要取决于测试用例的好坏.

时间: 2024-10-06 06:49:15

软件测试用例的认识误区的相关文章

软件测试用例的设计

一个测试用例,就是设定输入数据,运行被测试函数,然后判断实际输出是否符合预期.输入数据是测试用例的核心,输入数据的定义是:被测试函数所读取的外部数据及这些数据的初始值. 1.自动测试工具的选择 目前通过使用自动化工具对于软件的质量进行保障已经司空见惯,我们可以通过在测试中应用自动化工具来大幅度提高软件测试的效率和质量.常用的白盒测试自动化工具有Telelogic公司的Logiscope软件.Compuware公司的DevPartner软件和IBM公司的Rational Purify等:而黑盒测试

手机软件测试用例设计实践

一.测试用例设计概述 测试伴随在整个手机软件开发的各个阶段中,测试质量的高低直接关系到手机软件的可用性,友好性,可靠性.可以说,测试环节是手机软件开发的重要环节,是整个开发过程的"中枢神经".同时,测试用例的设计在测试过程中是非常重要的一个环节,是重中之重. 一般来说,设计测试用例应该考虑如下几方面: 1)有效性:测试用例是测试人员测试过程中的重要参考依据.不同的测试人员依据相同的测试用例所得到的输出应该是一致的. 2)可复用性:良好的测试用例具有重复使用的功能,使得测试过程事半功倍,

如何有效评估软件测试用例的质量?

软件测试用例质量的评估,可以考虑下面3个方面的因素: 第一,根据测试用例的形式评估其质量,主要包括: 1)测试用例与需求规格说明中需求条目的可追溯性,例如:我们要求每个需求条目至少有1个测试用例与之对应.目的是为了评估测试的需求覆盖率,以及分析需求发生变更的时候,对测试修改工作的影响程度: 2)测试用例有无明确的期望结果.通常来说,测试用例的每个执行步骤,都应该明确描述期望的结果,以保证测试人员可以与测试实际结果进行比较,并分析是否需要提交缺陷报告,或者修改测试用例. 3)是否满足公司内部定义的

关于自动化软件测试用例设计的几点分析

1.手工测试用例和自动化测试用例功能定位的区别. a)手工测试用例 i.较好的异常处理能力,能通过人为的逻辑判断校验当前步骤的功能实现正确与否. ii.人工执行用例具有一定的步骤跳跃性. iii.人工测试步步跟踪,能够细致的定位问题. iv.主要用来发现功能缺陷 b)自动化测试用例 i.执行对象是脚本,任何一个判断都需要编码定义. ii.用例步骤之间关联性强. iii.主要用来保证产品主体功能正确完整和让测试人员从繁琐重复的工作中解脱出来. iv.目前自动化测试阶段定位在冒烟测试和回归测试. 2

浅谈手机软件测试用例设计方法

手机产品和用户交互非常紧密,手机的软件质量就显得尤其重要.要使最终用户对手机软件感到满意,必须要在手机软件发布之前进行充分的测试.而不完全.不彻底是软件测试的致命缺陷,但是我们又不可能进行穷举测试,任何程序只能进行少量而有限的测试.为了节省时间和资源,提高测试效率,我们必须要从数量极大的可用测试数据中精心挑选出具有代表性或者特殊性的测试数据进行测试.测试用例在此情况下产生.测试用例是为特定的目的而设计的一组测试输入.执行条件和预期的结果.简单地说,测试用例就是设计一个场景,使软件程序在这种场景下

浅谈软件测试用例

发现: 人来了,又走了! 有篇博文如是说,大体意思是有些的程序员,中途转测试,但很快又转回程序员.为何会这样,难道说测试不值得他们一试吗?普遍流行说测试工作如何如何简单,就是会点点鼠标.按钮就能做的工作:然而,事实恰恰相反,这些老到的程序员却是因为测试工作的复杂而没有既来之,则安之的. 软件测试乍看起来是件简单的工作,深入其中后,发现并不如所想,程序中各个模块之间的接口调用错综复杂(特别是大型程序),加之程序员的编写代码技巧以及个人习惯,使得一个程序有多种编程思路,只为实现功能,而不考虑代码的优

软件测试用例的设计心得

1.了解软件的原始需求(测试目的) 在编写一个软件或者模块的测试用例时候,一定要明白这个功能的原始需求,也就是软件的使用者(客户)的需求.理解原始需求后,编写的测试用例才更有目的性. 2.熟悉软件的功能需求(测试点) 这个功能需求是指软件的细化需求点,这个一般在需求文档里面都会体现.这里要做的是把 "粗略"的需求,细化成一个个小需求点.熟悉功能需求后,要知道软件是怎么使用的,这也才能覆盖到各种操作. 总之,测试用例一定要全部覆盖所有的需求点,这是最基本的一点. 3.熟悉软件的实现原理(

软件测试用例设计方法

前面有曰:测试结果的准确性取决于测试用例的设计,故测试用例设计显得尤为重要.今天就好好梳理下,测试用例的相关内容. 重要性:Test Case贯穿整个测试执行过程,分两大类:数值计算类和数据处理类 概述:编写一组前提条件,输入,执行条件,预期结果的组合方案.完成对某个特定需求或目标的测试,体现测试方案,方法,技术和策略的文档. 1.什么是测试用例,为什么要编写? 测试用例就是编写一组条件,输入,执行条件,预期结果的并完成对特定需求或目标的测试,体现测试方案,方法,技术和策略的文档. 由于测试用例

小脑袋竞价软件对SEO优化误区总结

SEO优化很多时候都要掌握一个度的问题,而新入行的http://www.aliyun.com/zixun/aggregation/9102.html">SEOer很容易因为理解错误或心态急躁走入SEO优化的误区.下面我们详细谈谈SEO优化容易走入的误区,希望新入行的SEOer在SEO优化过程中对这些误区保持警惕. SEO优化误区一:首页关键词越多越好,容易提升排名. 关键字堆砌是SEO黑帽常用方法之一,这样做可以达到短平快的效果,使网站在尽量短的时间内把关键词排名做上去,这也是为什么有的公