如何设计测试用例

酔清风 酔清风     2022-12-05     371

关键词:

测试用例是业务测试过程中测试者的生命线。
在大需求面前无从下手测试时,测试用例是测试者对全盘概念的梳理和深度探索;
在测试过程中碰到任何问题阻断测试场景或思路时,测试用例是测试者的执行指令和方向盘。
当需求文档及对应的需求技术方案产出时,测试者需要根据提供的文档对需求进行解构,解构出需求的原子内容后,再进行测试用例的设计,而测试用例即需要考虑测试验证的全面性又需要考虑测试的深度。那么,这就需要测试人员进行全方位考虑来构建测试思路和使用什么样的测试策略和方法来尽可能保证测试覆盖的全面性。

试问,当面对一个大型需求(此处是指需要花费至少 2 个迭代才能完成的需求),测试人员需要有什么样的测试用例设计思路才能达到高时效、高人效、全面的做到测试覆盖呢?

测试用例设计核心

重要程度

测试用例的设计首要考虑的是主流程场景(一定要搞清楚需求的背景及需求是为了解决什么问题而产生的),主流程包括:
1. 测试用例的设计围绕产品需求文档的描述进行设计
2. 测试用例的设计场景是否符合实际用户的使用场景
在主流程中,把握测试用例的优先级,能够尽早在测试过程中发现严重问题,尽早暴露问题

等价性

测试用例的设计需要根据开发的实现逻辑去设计,黑盒测试可能存在设计的多个测试用例间存在无效测试用例的情况,比如有些交互场景中,存在表单中有多个填入项,如果测试者设计时,将每个输入项都作为一个测试场景去设计,而不了解实现的话,那测试用例将呈指数增长,必定会存在很多无效测试用例。当然,此处的比喻比较极端,但测试者需要有这样的意识,去把开发侧实现的逻辑分支梳理清楚,防止产生垃圾测试用例的情况。

边界性

测试用例的设计涉及到功能模块间的交互,既然涉及到交互那必然存在边界。测试者需要明确该需求的上下游,该需求有几个入口和几个出口。

基于以上几点,作为设计测试用例的核心思想贯穿整个测试用例编写过程,再配合测试方法,你的脑海中将呈现一个需求完整的骨架,那么测试者对质量的把握度会大大提升。

测试点

主流程

主流程,即需求中说明的所有功能点场景,这里是测试的重点,也是冒烟测试去检查提测质量的重要手段。

分支流程

主干逻辑以外的分支逻辑场景。

异常流程

数据异常:如关键数据缺失、数据重复推送
调用链异常:如业务调用链路异常,系统的处理
常见异常有:

  1. 依赖服务不可用,是否有降级处理,是否有监控告警?
  2. 依赖数据缺失,是否 catch 异常,确保程序不 crash,并产生 error 日志?
  3. 服务重启,是否容错?
  4. 基础组件服务异常,如 redis、kakfa、mysql 等异常,是否丢数据,基础服务恢复以后,能否恢复服务?

UI 测试点

  1. 风格、样式、布局
  2. 校验:必填、选填等
  3. 显示是否有遮盖和不合理的省略情况
  4. 提示语是否友好
  5. 等等(此处可对不同项目的 UI 关注点进行补充)

向前兼容

针对对已有的需求进行改造时,需要考虑接口或者 GUI 上的向前兼容。

关联功能

需要评估该需求是否会影响到已有功能,比如:代码中对公共模块的改动。

历史数据影响

需求改造是否需要对历史存在的数据进行处理?如:已有表结构更改等。

性能影响

这里指的性能影响比较简单,如:接口响应速度(大数据量的查询、高并发访问等)、GUI 的渲染速度(大数据量时的渲染)作为基本的性能达标指标;
对于系统最大的业务处理能力、处理速度等性能表现,需要另起一个大话题来说了。

终端兼容性

若产品支持:PC、小程序、APP 端等多个终端,需要在多终端验证功能可用性。

安全性

业务数据安全:如,重要数据非明文;
业务场景安全:如,绕过登录验证、交易中的数据篡改、接口的恶意调用等

以上设计测试用例的思路和方法是个人工作经验中的沉淀和总结,属于个人浅薄之见,但应该对测试新人有一定的参考作用,同时也希望业内精英能够发现不足和缺陷,提出改进意见。

福利(关注公众号领取)

主体内容包含:阿里、腾讯、美团、字节跳动等等测试面试题,功能测试、性能测试、自动化测试等学习视频等知识内容。

 

如何设计测试用例

测试用例是业务测试过程中测试者的生命线。在大需求面前无从下手测试时,测试用例是测试者对全盘概念的梳理和深度探索;在测试过程中碰到任何问题阻断测试场景或思路时,测试用例是测试者的执行指令和方向... 查看详情

如何设计测试用例

测试用例是业务测试过程中测试者的生命线。在大需求面前无从下手测试时,测试用例是测试者对全盘概念的梳理和深度探索;在测试过程中碰到任何问题阻断测试场景或思路时,测试用例是测试者的执行指令和方向... 查看详情

测试理论--如何根据需求设计测试用例

从拿到需求文档不要立马开始着手写测试用例,需要仔细推敲整理需求,画出系统级、模块内流程图,并找出各种测试点,等对需求进行了头脑风暴般的整理之后,此时已对测试系统的功能很清楚了,再着手开始写测试用例。那... 查看详情

因果图法设计测试用例

...组合对应的输出的图形化工具。在因果图的基础上可以设计测试用例。因果图的画法:& 查看详情

一文教你学会怎么设计测试用例

...非常重要的一个环节,它和测试思维是紧密相关的。如何回答这个问题,才会更好地体现你的测试能力呢?笔者在面试中高级测试人员的时候,这个问题也是必问题。下面会根据我自己理解给出思考,欢迎交... 查看详情

等价类划分法设计测试用例

序内部结构,设计测试用例的唯一依据是软件需求规格说明书。等价类所谓等价类,是输入条件的一个子集合,该输入集合中的数据对于揭示程序中的错误是等价的。等价类又分为有效等价类和无效等价类。有效等价类代表对程... 查看详情

因果图法设计测试用例

一、使用因果图的好处1考虑了多个输入之间的相互组合、相互制约关系2能够帮助我们按一定步骤,高效率地选择测试用例,同时还能为我们指出,程序规格说明描述中存在着什么问题二、利用因果图导出测试用例需要经过的一... 查看详情

黑盒设计测试用例方法

1.等价类法定义: 是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。划分等价类: 等... 查看详情

一个有广告的花杯子,尽可能多的设计测试用例

1.杯子特性杯子的容量:能装多少升水杯子的形状:圆形杯子的材料:纸杯杯子的抗摔能力:风吹是否会倒,摔一次是否会坏,摔多次是否会坏杯子的耐温性:装冷水,热水,冰水2.广告图案广告图案碰水是否会掉色广告图案内... 查看详情

测试设计学习-关于使用pict设计测试用例步骤说明(代码片段)

...的测试,比手工设计的测试更加有效,并且只需要手工设计测试用例的一小部分时间。PICT可以有效地按照两两测试的原理,进行测试用例设计。在使用PICT时,需要输入与测试用例相关的所有参数,以达到全面覆盖的效果Eg:Type:... 查看详情

因果图设计测试用例的步骤

...下面让我们来讨论“Howtodo”的问题。使用因果图设计测试用例一般包括下面几个步骤:1.1.1.    分析需求阅读需求文档,如果UserCase很复杂,尽量将它分解成若干个简单的部分。这样做的好处是,不必在一次... 查看详情

如何设计测试用例

测试用例是业务测试过程中测试者的生命线。在大需求面前无从下手测试时,测试用例是测试者对全盘概念的梳理和深度探索;在测试过程中碰到任何问题阻断测试场景或思路时,测试用例是测试者的执行指令和方向... 查看详情

设计测试用例---练习

...09;解:2、用因果图进行测试用例的设计用因果图法设计测试用例的步骤分析所有的输入、输出(将隐含条件也要写出来)输入:1.5元硬币,2元硬币,”可乐“按钮、”雪碧”按钮、"红茶"按钮输出&#x... 查看详情

测试用例设计方法边界值分析法

...时发生在输入或输出的边界上,因此针对各种边界情况设计测试用例,可以查出更多的错误。(1)边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围... 查看详情

测试用例设计经典面试题——电梯,杯子,笔,桌子,洗衣机

...,报警装置是否安装,报警电话是否可用;3、通风状况如何,是否有手机信号;4、在电梯上升过程中的测试,比如电梯在1楼,有人按了18楼,在上升到5楼的时候,有人按了10楼,电梯会不会停;5、在电梯下降过程中的测试,比... 查看详情

一文教你学会怎么设计测试用例

...非常重要的一个环节,它和测试思维是紧密相关的。如何回答这个问题,才会更好地体现你的测试能力呢?笔者在面试中高级测试人员的时候,这个问题也是必问题。下面会根据我自己理解给出思考,欢迎交... 查看详情

测试用例综合设计方法

...一、如果规格说明书中包含输入条件,用因果图法进行设计测试用例。二、如果源码中遇到输入输出边界,用边界值分析法进行设计测试用例,这是输入输出边界的分析。边界值分析产生一组附加的测试条件,但是大多数或全部... 查看详情

软件测试流程

...排测试资源:4.安排测试进度:5.预估测试风险:三、设计测试用例:四、执行测试:五、编写测试报告:虽然不同软件的详细测试步骤不同,但他们所遵循的最基本的测试流程是一样的:分析测试需求------制定测试计划------设... 查看详情