聊聊场景及场景测试

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

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

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

主要场景

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

次要场景

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

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

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

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

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

用户日常使用的相关场景

故障相关场景

升级/扩容相关场景

分析主要场景和次要场景

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

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

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

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

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

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

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

场景测试用例输出

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

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

定义清晰的场景

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

覆盖所有关键路径

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

数据准备

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

自动化与手动测试结合

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

可重复性

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

异常处理

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

安全性

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

文档记录

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

相关推荐
小码哥说测试6 小时前
软件测试技术之 GPU 单元测试是什么!
自动化测试·功能测试·测试工具·jmeter·单元测试·集成测试·postman
测试界吖吖1 天前
软件测试 | APP测试 —— Appium 的环境搭建及工具安装教程
自动化测试·软件测试·功能测试·程序人生·职场和发展·appium
半导体守望者2 天前
AE电源HPG13150 400V Generator 手侧
经验分享·笔记·功能测试·自动化·制造
百晓生说测试2 天前
2024年最新软件测试学习路线图(从入门到精通)
自动化测试·软件测试·功能测试·学习·程序人生·职场和发展
Lossya3 天前
【自动化测试】移动app的分层测试以及自动遍历的基本概念
功能测试·测试工具·单元测试·自动化·分层测试·自动遍历
Feng.Lee4 天前
缺陷(Bug)的一生
功能测试·测试工具
测试界吖吖5 天前
使用Jenkins扩展钉钉消息通知
自动化测试·软件测试·功能测试·程序人生·servlet·jenkins·钉钉
爱蹦跶的精灵6 天前
前端打包装包——设置镜像
功能测试
测试界兮兮7 天前
我们怎么把自动化测试落地到一个项目上呢?
功能测试·程序人生·职场和发展·单元测试·压力测试