一篇搞懂场景测试(Test Scenario Analysis)
场景测试属于一种非常常见的测试方法。那到底什么是场景测试呢?
下面的内容,是基于场景测试的定义、特点、使用场景,编写方法、与测试用例的区别,来进行详细的阐述。
定义:
- 场景测试是一种使用场景来进行的软件测试活动,一般使用假设的Story来帮助测试人员解决复杂的问题,或者是用于测试系统。
- 理想的场景测试是一个可信的、复杂的、有创意的故事,其结果很容易评估。
- 这些测试通常不同于测试用例,因为测试用例是单个步骤,而场景涵盖了许多步骤。
特点 (一个好的测试场景都有什么特点呢)
- 该测试是基于一个如何使用程序的Story,包含有关参与者的动机。
- 这个Story很关键。有影响力的参与者会推动修复未能通过测试的程序。
- 这个Story可信。它不仅会发生在现实世界中;利益相关者也会相信这样的事情将会发生。
- Story涉及对程序的复杂使用、在复杂的环境中的使用,以及在复杂的数据集里使用。
- 测试结果易于评价。这对于所有测试都很有价值,但对于场景尤其重要,因为它们很复杂。
使用场景(为什么使用场景测试)
- 学习产品
- 将测试与文档化的需求联系起来
- 暴露缺陷,以交付期望的产品
- 探索程序的专家级使用
- 让bug报告更积极
- 将与需求相关的问题暴露出来,这可能涉及重新开启旧的需求讨论(使用新数据)或显示尚未确定的需求。
如何做场景测试
- 确定主流程和可选流程
- 在场景测试中,基于正确的操作流来实现正确的结果。我们把这个流程称为主流程
- 当在操作流中遇到失败流程时,我们将此流称为可选流
场景测试的方法
- 列出主流程和可选流程
- 基于主流程和可选流程创建不同的场景
- 基于每个场景设计测试用例
- 评审测试用例
测试用例和测试场景的区别
测试用例 |
测试场景 |
测试用例由测试用例名称、前置条件、步骤/输入条件、预期结果组成。 | 测试场景由一个详细的测试过程组成。一个测试场景有许多与之相关的测试用例 |
测试用例是低级动作,它可以从测试场景中派生出来 | 测试场景是测试需求的高级分类 |
测试用例意味着在测试时,有详细的文档可以指导测试。 | 测试场景意味着详细地讨论和思考需求。 |
详细的测试用例文档,可以充分保护新软件测试人员。 | 降低产品的复杂性和可重复性的测试场景,就是测试用例。 |
详细的测试用例,它需要更多的时间和资源 | 在新的软件的测试中,它是一种新的思路,并且节省时间。 |
适合初级测试人员 | 适合高级测试人员 |
在实际应用场景中,我们应该结合当前产品的特点,例如产品特性,测试规模,人力资源,时间范围,可得资源等等因素,综合考虑,选择适合当前产品的用例编写方法。
通过以上的学习,我们可以看到,测试用例和测试场景是相辅相成的。它们既可以独立存在,也可以融合使用。它们既有各自的优势,也有各自的弊端。
一篇搞懂场景测试(Test Scenario Analysis)相关推荐
- 一篇搞懂Mock测试
1. 什么是Mock测试 mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象/数据/场景,用一个虚拟的对象来创建以便测试的测试方法. 2. Mock测试常见场景 无法控制第三方系统接 ...
- 一篇搞懂OOA/OOD/OOP的区别
文章目录 OOA OOD OOP 总结 相关文章: 一篇搞懂OOA/OOD/OOP的区别 面向对象的基本原则-抽象,封装,继承,分解 GRASP模式概述 面向对象的六大原则 OOA什么鬼,OOD又是什 ...
- 一篇搞懂微信小程序以及和其他对比
一篇搞懂微信小程序以及和其他对比** 前两年的文章了,现在小程序肯定是有变化的,作为自己的随记 一.产品定位及功能分析** 微信小程序是一种全新的连接用户与服务的方式,他可以在微信内被便捷的获取和传播 ...
- python 类-Python入门--一篇搞懂什么是类
原标题:Python入门--一篇搞懂什么是类 写一篇Python类的入门文章,在高级编程语言中,明白类的概念和懂得如何运用是必不可少的.文章有点长,3000多字. Python是面向对象的高级编程语言 ...
- C++ 一篇搞懂多态的实现原理
C++ 一篇搞懂多态的实现原理 虚函数和多态 01 虚函数 在类的定义中,前面有 virtual 关键字的成员函数称为虚函数: virtual 关键字只用在类定义里的函数声明中,写函数体时不用. cl ...
- 一篇搞懂关于计算机的减法运算
一篇搞懂关于计算机的减法运算 减法 相减结果为正的减法 相减结果为负数的减法 减法 相减结果为正的减法 如下一篇拙言,是自己平时的总结,如有错误欢迎各位大佬指正. 相信你一定听说过,补码,取反加一等等 ...
- 一篇搞懂ddt数据驱动测试
1. DDT简介 Python的unittest不像pytest,没有自带的数据驱动功能,所以如果在使用unittest时又想要用数据驱动来进行测试,那么就需要借助DDT来完成. DDT全称Data- ...
- 一篇搞懂TCP、HTTP、Socket、Socket连接池
上一篇:闲鱼面试官:Thread.sleep(0) 到底有什么用?我:有点懵~ 作者:数澜科技 链接:https://www.jianshu.com/p/e47a766e03da 前言:作为一名开发人 ...
- 【Redis系列】深入浅出Redis主从复制之读写分离【一篇搞懂Redis复制】
由于人权问题,slave更改为了replica Redis默认采用异步复制的持久化方案(RDB),具备低延迟.高性能的特点.这是大多数Redis的自然复制模式. 主从复制(master-replica ...
最新文章
- mstsc VS vnc : 远程桌面最快的原因在于RDP协议
- windows一键安装web环境全攻略(win2008)
- ASP.NET MVC5微信公众平台整合开发实战教程
- 八月22日,django知识点总结:
- 数学发展重在人才,丘成桐鼓励年轻学子“无法无天”
- 在 const 和 non-const 重载的成员函数中避免代码重复
- TinyLog –轻量级Java日志记录框架教程
- 创建oracle系统dsn,timesten创建dsn
- AI图片翻译助手软件FAQ
- 1407 :上三角矩阵的判断(c语言)
- http长连接、长轮询的理解
- 无线网络的设置和使用
- hdmi怎么支持2k分辨率_安卓机皇发布!全系支持2K分辨率+120Hz刷新率
- 同样是大逃杀类影片,《鱿鱼游戏》凭什么能火遍全球?
- 联想电脑谷歌浏览器f12无法唤起开发者工具
- 苹果ipa 安卓apk 和APPX 安全扫码和分析平台
- linux系统的文件句柄数
- 前端入门css学习笔记(十一)-----溢出属性之空余空间
- 基于SSM移动计费管理系统
- [leetcode417]. 太平洋大西洋水流问题