软件测试人员一定要会的用例设计思路

发表于:2022-11-16 09:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:喵说测试    来源:知乎

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

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号