技术干货 | 测试用例设计

售前免费咨询热线: 4 0 0 - 1 8 6 - 0 9 0 5
汇智资讯Huizhi information

当前位置:首页 »技术干货 | 测试用例设计

技术干货 | 测试用例设计

日期:2020-11-13 14:19:29 访问量: 来源:

开展测试用例设计活动之前,先花点时间回顾一下什么是测试用例。

 

测试用例实际上是对软件运行过程中所有可能存在的目标、运动、行动、环境和结果的描述,是对客观世界的一种抽象。

 

通俗的讲,测试用例就是测试工程师在实施测试活动时使用的实例,如“输入正确用户名‘liudebao’、正确密码‘123456’,点击【登陆】按钮登陆系统”这样的操作描述,即软件测试活动中所使用的测试实例,解决验证需求时“用户想要什么?怎么操作?得到什么?”三个问题。

 

测试用例设计过程,即测试工程师针对特定功能或组合功能的测试方案,并编写成文档的过程。

 

测试用例设计既要覆盖用户正常应用的情况,也需考虑用户异常、极限的操作行为。

 

软件测试的目的是暴露应用软件中隐藏的缺陷,选取测试用例和数据时要考虑易于发现缺陷的测试用例和数据,结合复杂的运行环境,在所有可能的输入条件和输出条件中确定测试数据,来检查应用软件是否都能产生正确的输出。 

 

由于每一个项目有明确的时间和成本限制,测试不可能无限期的进行,任何程序只能进行少量而有限的测试,无法做到完全、彻底的测试。所以,软件测试工作中,测试工程师需采用一定的方法,设计高效的测试用例来指导测试工作,提高工作效率。

 

从工程实践的角度,测试用例设计通常需遵循以下几条基本准则:

 

01

代表性

能够代表各种合理和不合理的、合法的和非法的、边界和越界的以及极限的输入数据、操作和环境配置等。

 

02

可判定性

测试执行结果的正确性是可判定的或可评估的。

 

03

可再现性

对同样的测试用例,系统的执行结果应当是相同的。

 

常用的测试用例设计方法有等价类、边界值、正交试验、状态迁移、流程分析等。具体的设计方法本教程不做详细介绍,请读者参考《软件测试技术基础教程--理论、方法与工具》一书。

 

传统的测试用例设计,要求将测试数据、操作步骤、预期结果细致罗列,对于需求明确、版本周期长的项目,可以投入相对多的人力、时间资源进行测试用例的开发与维护,但敏捷测试中的用例设计则不同。

 

首先需要肯定的是,敏捷测试同样需要设计测试用例(虽然用例繁简程度不同)。测试用例是测试工程师实施测试工作中必不可少的环节,即使可能没有明确的需求,也需要列出测试用例纲要。

 

敏捷测试用例设计,与传统测试用例设计相比,其不同点在于,敏捷测试用例更多体现如何在测试周期短、版本迭代快的环境下,高效执行测试,而不关注用例本身的格式。

 

针对产品需求演化的用户故事,考虑用户通过系统实现何种功能,达成什么目标,获取什么价值,在这个过程中,敏捷用例可简化为“谁”如何“操作”系统,完成什么“目标”,如“管理员登陆系统后,系统应该列出‘商品管理’功能页签,而普通用户不能看到”。事务描述性的需求,也可写出一条用例。

 

敏捷测试用例可以是对用户故事验证标准的细化,也可以多个用户故事组合起来构成一条用例,具体如何操作,完全取决于用户故事的细化程度。

 

测试工程师设计测试用例过程中,可将用户故事细化为用例,为了与用户故事区别,可增加用例所属模块,以示与用户故事区别,这个功能现在很多测试管理平台都已经实现。

 

设计测试用例前,先在禅道中增加ECShop产品模块,如图4- 1所示。模块类别来源于产品设计及用户故事划分,由产品经理或产品经理委派其他人完成添加。

 

测试用例设计

图4- 1产品模块列表

 

【案例4-1 ECShop测试用例创建】

 

完成模块设计后, 测试工程师可进行测试用例设计。登陆后,进入“测试”-“用例”模块,点击“建用例”按钮,如图4- 2所示。

 

测试用例设计

图4- 2测试用例设计界面

 

所属产品:默认读取当前产品名称,如有多个,可选择。

 

所属模块:可根据模块划分,选择正确的用例所属模块,这个地方必须设置,便于后面的用例统计。

 

用例类型:默认选择“功能测试”,根据用例的应用目的选择。

 

适用阶段:根据测试用例所适用的测试阶段设置,此处选择“系统测试阶段”。

 

用例标题:填写当前测试用例的设计目的,如此处“ 添加包含html代码的商品类别名称,验证系统容错处理”。

 

优先级:设定当前测试用例的优先级,禅道默认提供了4级,根据颜色深浅划分优先级别,1级为最高级。通常可根据用户故事优先级确定,或者正向功能设为1级别,其他的根据经验或部门规程确定。

 

前置条件:执行当前用例的前置条件,如是否应当具有什么权限、是否需要准备什么数据、是否需要设定什么流程等。

 

步骤:详细描述当前用例执行的步骤,这里与传统的用例设计不同,敏捷用例每一步都应该有预期,遵从用户故事的设计,什么用户,做什么事情,期望得到什么。

 

关键字:不填写

填写确认没有问题后保存,编写完成后的用例界面如图4- 3所示。

 

测试用例设计

图4- 3“商品类别”测试用例设计

 

测试工程师根据产品需求、用户故事,设计每个项目的测试用例,每个测试工程师按照自己的任务分配,根据测试用例评审流程,开展测试用例评审活动。

 

评审成员一般是本项目组的成员,如测试工程师、开发工程师等,当然也可以邀请其他项目组成员。

 

评审阶段主要进行测试用例的论证,讨论分析测试工程师所设计的用例,发现用例设计过程中的错误与不足,发现问题需及时记录,便于后续修改。如果产品需求、用户故事设计变更,则应及时更新已变更需求、故事的测试用例。

汇聚行业精英智慧

致力于高端IT技术人才培养

助力万千学员成就IT梦!

汇智动力

扫码关注 领取资料

www.hzdledu.cn

相关阅读Reading

全国热线:400-186-0905

总部热线:028-6547-1147

周一至周日9:30-24:00

我要咨询
汇智动力微信

汇智动力微信公众号

')