软件测试员每日必做工作之一就是要了解用户的需求,测试出用户满意的产品是软件测试工作的核心,那么在需求评审过程中,更多的优秀软件测试员其实更善于对用户“隐形需求”的挖掘,能更加有效的做好软件测试的需求分析。
我们网上冲浪经常会看到“男友求生欲”挂上热搜,很多男生表示,再也不相信女友说的“我没生气”了。很多时候,在对很多矛盾的处理上女生会更在意男生的态度,这就是女生的“隐形需求”,有时候男生执着于对错,解决了问题,却只能收到冷淡的回应。
专业一点的例子也可以这样来看:
现在有一个PC客户端的命令行工具,这个工具可以接收三个命令行参数,其中,前两个是数字,最后一个是运算符,运算符只支持加减乘除四种,工具的功能就是把前两个数字使用运算符做下运算,然后输出运算结果。
很多人面试可能都会遇到这样关于写测试点的题,我相信大部分人在写功能测试点的时候都能覆盖到三个参数的正常和异常情况,会有一半的人能考虑到参数个数的正常和异常情况,一小半的人应该能考虑到数字参数的最大值情况,而能考虑到参数分隔符的正常和异常情况的就只有非常少的人了。
参数类型、参数个数这些都是需求里面明确写出来的,这些我们可以称为显性需求,所以能考虑到这部分用例的人很多,特别是参数的正常和异常,不管是否知道等价类划分法,都能考虑到。但是参数个数和数字最大值,又可以算到边界值分析法里面,如果不知道边界值分析,可能不会考虑到参数个数所有异常的覆盖情况,如果不懂编程,可能问不出来数字使用什么类型这样的问题,当然也就不知道所谓的最大值要怎么构造了,所以这个也可以算到隐性需求的范畴。
这里“隐形需求”就是参数分隔符了,这种没有明确说明的地方,有时候开发会按照自己自以为的方式给实现了,比如默认空格分割,但是测试后期发现很多人也会用逗号去分割,修改的话会造成新的修改成本,其实这个地方操作不难,难的是少有人想得到。
看完是不是感觉隐形需求在做好需求分析时是非常重要的呢~
希望我的答案可以帮到你,有任何软件测试方面的问题都可以来私信我哦~欢迎来交流!
做好测试需求分析,首先需要深度了解需求,一般需求分为业务需求、用户需求、功能需求。
-
业务需求:业务需求描述了组织为什么要开发一个系统, 即组织希望达到的目标。业务需求通常来自项目投资人,购买产品的客户实际用户的管理者、市场营销部门或产品集划部门。使用前置和范围文档来记录业务需求,这份文档有时也被称作项目轮廓图或市场需求文档。
-
用户需求:用户需求描述的是用户的目标或用户要求系统必须能完成的任务。比如软件的界面是否好看、功能使用是否便捷等都属于用户需求。用户需求可以认为是对业务需求的一个具体目标。比如业务需求提出了这个系统具有语音功能,那么用户需求可能就包含了语音具备的功能,比如. 比如可以喊刘德德华的电影影去搜家 电影等。
-
功能需求:功能需求规定开发人员必须在产品中实现的软件功能,用户利用这个功能来完成任务,满足业务需求。功能需求有时也被称作行为需求功能需求是去解决业务需求、用户需求的具体的解决方案,也就是我们通常说的需求说明书。对用户需求做具体的分析、提出实施方法(需求说明书通常是由软件开发方编写比如产品经理。使得用户和软件开发方都对软件的初始规定有个共同的理解,是整个开发的基础)。同时,开发方需要对需求说明书进行评估,比如这个需求能不能做,耗赛的成本是不是小于带来的收益,还有风险评估等。
什么是测试需求
- 概述:测试需求通常是以功能需求为基础,通过对功能需求的细化和分解,形成可测试的内容。
- 范围:测试需求应尽可能全部覆盖已定义的业务需求,以及功能和非功能方面的需求。
- 目的:明确需求的范围、明确每个功能的业务处理过程、明确不同功能点业务组合, 挖掘显式需求背后的隐式需求。测试需求用于解决测什么的问题,即指明被测对象中什么需要测试。
测试需求的特征
- 测试需求必须是可核实的,即必须有一个可观察、 可评测的结果,无法核实的需求不是测试需求。
- 测试需求应指明满足需求的正常前置条件,同时也要指明不满足需求时的出错条件。
- 测试需求不涉及具体的测试数据,测试数据设计是测试用例设计环节解决的问题。
测试需求与功能需求的关系
- 功能需求:系统应该做什么。例如,某ATM机取款业务需求:每次取款额度在100~2000之间;取款的金额是100的倍数,每日取款总额不得超过20000,这是功能需求。
- 测试需求:系统应该做什么、不应该做什么,发现系统设计中存在的问题。例如,取款金额可选:在100~2000之间且为100的倍数可取,小于100或大于2000不可取,在100~2000之间但不是100的倍数不可取,取款总额必须不超过账户余额,这是测试需求。
了解更多内容可以浏览: ***/i6617785505826210307/
原创文章,作者:普尔小编,如若转载,请注明出处:http://www.puerpx.cn/pxwd/9564.html