聊聊场景及场景测试

在我们进行测试过程中,有一种黑盒测试叫场景测试,我们完全是从用户的角度去理解系统,从而可以挖掘用户的隐含需求。

场景是指用户会使用这个系统来完成预定目标的所有情况的集合。

场景本身也代表了用户的需求,所以我们可以认为场景是需求的一种描述形式,从质量属性的角度描述需求不同,场景是从使用者的角度去看系统的,主要解决如何使用系统的。

主要场景

对于一个用户来说,和系统的功能点交互,是通过操作步骤和系统的反馈一步步完成的。我们把哪些与最核心,最直接的功能对应的步骤称为主要步骤或者称为主流程,对应的场景称为主要场景;与分支条件对应的是从步骤,对应的场景为次要场景。

次要场景

场景测试就是从场景的角度对系统进行测试和验证。从一个角度来说,场景测试也是一种需求测试,所以场景测试都是属于黑盒测试,将系统或者系统功能称为黑盒,不会关注系统实现细节,主要关注用户的使用习惯和用户关注点。

使用场景测试模型来进行测试分析

上图中增加了"被测系统"和"角色",目的是站在用户的视角,从用户的使用习惯入手,按照用户的实际部署,配置和使用(业务负载),确认系统的反馈是否符合用户的关注点要求。

从用户的使用习惯入手来分析和组织场景

用户首次使用系统的相关场景

用户日常使用的相关场景

故障相关场景

升级/扩容相关场景

分析主要场景和次要场景

分析这些功能最核心的点是什么,用户完成这个点最少的步骤是什么,这些步骤构成的场景一般就是主要场景。

可以分析有哪些异常场景。

分析用户完成这个功能,除了最少的步骤外,还可通过哪些步骤完成,如最长的步骤等。

分析这个场景还会涉及哪些别的功能。

在分析主要场景和次要场景后,还要分析进入这些场景的触发器及前置条件,以完善整个场景。

确定用户部署,配置,负载和用户关注点

我们要对分析得到的所有场景进行部署,配置和使用负载分析,此时需要特别注意的是要从用户关注点的角度确定相关检查点。

场景测试用例输出

完成以上步骤后就可以开始整理输出场景测试用例了,我们可以按照用户使用这个产品的时间线来组织场景测试用例。也就是前面分析得到的主要场景或次要场景的描述,作为测试用例标题,将场景的前置条件和用户部署作为测试用的前置条件,将主要场景和次要场景中分析得到的步骤作为测试用例的步骤;将配置,负载等作为测试用例的输入,将用户关注点作为测试用例的预期结果。

使用场景测试需要注意事项?

定义清晰的场景

确保每个场景都有明确的目标和预期结果。场景应该基于真实的用户故事或业务流程。

覆盖所有关键路径

设计场景时要考虑到所有重要的业务逻辑路径,包括正常路径、异常路径和边界条件。

数据准备

为每个场景准备必要的测试数据,确保数据的完整性和正确性,避免数据污染影响测试结果。

自动化与手动测试结合

虽然自动化可以提高效率,但在某些复杂或需要直观判断的情况下,手动测试仍然是必要的。

可重复性

确保场景测试可以被重复执行,以便于验证问题修复和持续集成测试。

异常处理

测试系统对异常情况的反应,例如网络中断、硬件故障等,确保系统的健壮性和容错能力。

安全性

在场景中包含安全相关的测试,如权限控制、数据加密、防止SQL注入等。

文档记录

详细记录测试场景、步骤、输入数据、预期输出和实际结果,便于后续分析和改进。

相关推荐
测试界茜茜9 小时前
16:00面试,16:06就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
测试界兮兮1 天前
基于jmeter+perfmon的稳定性测试记录
自动化测试·软件测试·功能测试·jmeter·程序人生·单元测试·压力测试
问道飞鱼2 天前
【软件工程】软件测试工程
功能测试·软件工程·性能测试·黑盒测试·白盒测试·非功能测试·冒烟测试
weixin_486681144 天前
芯片测试-RF中的S参数,return loss, VSWR,反射系数,插入损耗,隔离度等
功能测试
勤奋的小王同学~6 天前
(功能测试)第五章 APP项目测试
功能测试
软件测试曦曦6 天前
16:00面试,16:08就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
qq_433716956 天前
python excel接口自动化测试框架!
python·功能测试·测试工具·excel·接口测试·压力测试·postman
成都 - 阿木木6 天前
云原生自动化测试之命令行工具自动化测试设计思路分享
自动化测试·软件测试·功能测试·测试工具·云原生·云计算·命令行自动化测试
进击的雷神7 天前
软件测试面试之常规问题
功能测试·测试面试