职场新人对测试用例的困惑无非有以下几点:
什么是测试用例,为什么要写测试用例?
不知道怎么写,写了也不知道写的是否完整。
一、什么是测试用例?
百科的释义:
测试用例是对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。
其内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档。
简单地认为,测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求。
二、为什么要设计测试用例?
1、指导测试工作的进行
测试用例可以把产品需求转换为可操作的步骤【步骤、操作、输入、输出、优先级等】,
从而指导测试人员按部进行测试。
2、验证产品的需求是否合理
产品的逻辑关系会在用例设计时得到推敲验证,从而得出相应结论。
3、帮助评审需求,补充需求细节
编写测试用例时会考虑各种正常异常测试场景【逆向思维】、数据【边界值等】以及兼容性、性能等测试,
会对这些细节部分的处理进行一定的补充与完善。
4、加深测试人员对产品的认识和印象
需求评审时可能用两个小时,讲了一个需要两百个小时投入的需求。
大部分内容只是泛泛的讲解一遍,真整编写用例时,测试人员对需求一句一句的解读,从而转化成可执行的用例,这个阶段才是测试对需求认识更彻底的时刻。
5、便于测试负责人跟进测试进度
负责人根据用例的多少、复杂程度来评估相应的测试用例执行工时;以测试记录来评判测试过程的输出;从而跟进相应的测试进度与输出。
6、帮助发现拓展测试范围
用例设计是可以结合测试方法,从而拓展测试范围,不局限于双眼所看到的表面内容。
7、方便回归测试,复查BUG是否还会出现
回归测试时可以根据一轮测试的结果,重点复测出问题的用例以及功能,从而避免无序、无重点的回归测试。
8、测试结果可以体现测试通过率,作为产品质量评估
可以对测试结果进行统计,统计维度可以有:用例执行率、缺陷发现率、一轮测试通过率
9、培训新人,提高新人测试效率,节省对新人的指导时间
产品指导新人可以看PRD,开发指导新人可以看代码,测试指导新人看什么呢,当然是用例了。用例作为测试人员的核心输出,也是测试人员对产品知识的。
三、如何进行测试用例设计
测试用例设计分析是一个发散的过程,我们要考虑各种各样的场景、数据。
测试用例编写是一个收敛的过程,我们要把发散的思维转化为一条一条可执行的用例。
为了避免用例冗余、多、乱、无效、重复等问题,通常遵循以下原则进行用例设计。
从左到右,由上而下:
元素的布局,用户的操作,都是习惯“从左到右,由上而下”,设计用例时同样遵循这样的原则。
面对一个需求或一个全新的功能模块,在进行用例设计时,为了避免测试对象丢失,用例设计混乱无序,我们遵从“从左到右,由上而下”的原则。
依次对看到的测试对象进行用例设计,测试点发散,最终输出完整的测试用例。
按照上述原则编写的用例,覆盖所有可测对象,基本不会出现测试对象缺失,遗漏等现象。
但容易遗漏多测试对象组合的场景以及应用型测试场景。
从外到内,由点及面:
对于测试路径较深,链路较长的测试场景,我们遵循“从外到内”的设计思路,针对每一层测试路径上的对象,逐个进行设计。
再“由点及面”将路径整合,测试对象整合,以此来丰富场景型、应用型、组合型用例。
这样,遵循上述原则设计出来的用例,就包含了每一层级上的所有测试对象、每个路径上的所有测试对象、对象与对象的组合、路径与路径的组合,相对完善的覆盖了所有可测对象。
另外,再结合头脑风暴、用例评审等手段,不断促使用例的完整性与覆盖率达到相对较高的水平。
常见的编写测试用例的工具有Excel和Xmin,相应的模板,供参考:
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
文档获取方式:
这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取