测试专家:请测试一个纸杯?

测试菜鸟:什么?

测试专家:如果给你一个喝水的一次性一次纸杯,你将如何测试它?

测试菜鸟:。。。我想想啊。。。

几分钟后。。。。。。。

测试菜鸟:倒满水看看漏不漏。。。。嗯。。。。

测试专家:还有么?

测试菜鸟:能不能倒出水来。。。会不会变形?。。。。。。一个纸杯怎么测啊?脑子全乱了?。哦,对了!

你有需求么?

测试专家:嗯,不错的问题,你见过纸杯的需求说明书么?

测试菜鸟:没需求说明书我咋测?

测试专家:好吧,假设我是你老板,是你客户,你也这么回答我?

测试菜鸟:。。。我要积极。。。想办法,您能告诉我该怎么做么?

测试专家:跟着我念: FDSFSCURA - CIDTESTD - SFDPOT - CRUSSPIC - STMPL

测试菜鸟:神马?

测试专家:再念几遍: FDSFSCURA - CIDTESTD - SFDPOT - CRUSSPIC - STMPL

FDSFSCURA - CIDTESTD - SFDPOT - CRUSSPIC - STMPL

FDSFSCURA - CIDTESTD - SFDPOT - CRUSSPIC - STMPL

FDSFS。。。

测试菜鸟:等等等等。。。。您在教我念咒么?这就行?您是邓布利多我可不是哈利波特。

测试专家:不开玩笑,把这些字母记住并应用自如,你就能够非常好的做测试设计了。

测试菜鸟:真的?那。。。FDSFSCURA。。。。。

测试专家:你还真听话。不逗你了,先解释一下这些字母的含义吧。

基于多年的测试经验,测试大牛James Bach总结出了一套测试设计的方法论,那就是启发式测试策略模型( Heuristic Test Strategy Model)。这套模型包含了一组精心挑选出来的测试设计策略。测试者只要把这些策略熟记在心,在测试设计时依次对照这些策略,测试思路就会源源不断的从你脑子里迸发出来了,还不跑偏。

这套模型非常简单,只有4个域(见下图),每个域有那么几条测试策略,每个策略可以用1到2个单词描述,把这些单词的首字母串起来就是上面蓝色字体的字符串也就是我们所说的引导词。

来解释一下启发式测试模型。我们在做测试设计时,首先想到的是要应用我们已有的测试技术(Test Techniques)并综合考虑项目环境(Project Environment)、产出物(Product element)、质量准则(quality Criteria)。这样我们就能够得到一个有基本保障的(看得到的)质量(Perceived Quality)

回到刚才所说的“测试一个纸杯”,我们目前能拿到的只有手中的“一个纸杯”,对照一下刚才所说的图,其实最先想到的应该是产出物(Product element)。模型给出了产出物域需要思考的项:

结构(Structure)- 所有组成产出物的东西。

代码,界面,接口,硬件,非可执行文件,附属物件。

功能(Functions)- 所有产品所实现的功能

用户界面,系统接口,应用,计算,时间相关性功能,变化(如改变字体),

开启/关闭,多媒体,错误处理,交互,可测性

数据(Data) -所有产品处理的数据

输入,输出,预设值,持久数据,序列,大小数量变化,噪声数据,生命周期等

平台(Platform) -所有被测软件所依赖的外部事物

外部硬件,外部软件,内部组建

操作(Operation) -所有产品可执行的操作

用户,环境,常见操作,非正常操作,极限操作

时间(Time) -所有与产品相关的时间指标

输入/输出,快/慢,并发,变化率

注意到上述几项中英文被标蓝的首字母了么? SFDPOT 就是刚才测试专家念的引导词中的一组。我们再次回到“测试一个纸杯”,现在可以一项一项来了:

结构:用料是否环保?是否能平稳放在桌面上?放了水是否能平稳放在说面上?杯口是否光滑?。。。。。

功能:到进水是否不漏,是否不变形?拿起来是否能够不显著变形?水是不是能倒出来?。。。。。

数据:放半杯水,放一整杯水,放冷水,放热水,放茶叶,放可乐。。。。。。。

平台:能否放在桌子上不倒?手拿着是否不变形,不会感到不舒服?是否能放到杯架、套到别的杯子上?。。。

操作:倒进水,喝水,再倒水,倒开水,捏变形,弹烟灰,丢弃。。。。

时间:看喝水的时候水是不是很快的能流出来。。。

这里边有重复项,这没关系,合并同类项就好了,我们不是要强制归类,而是要利用这些引导词帮你想到该测试的地方。

剩下的就是把其他几个测试域中的关键字找到,根据这些关键字设计测试

如何测一个纸杯_如何测试一个纸杯相关推荐

  1. Java怎么测并发量_如何测试一个web网站的性能(并发数)?

    最近做了个web网站(javaweb),现在想测试一下这个网站能承受的最大并发数,但是对于压力测试知之甚少,求指教啊,我有两个问题: 1.我最想测试的是最大并发量,怎么测试呢? 2.一般web网站性能 ...

  2. 如何用vbs编写一个游戏_如何编写一个 SkyWalking 插件

    点击上方"开源社"关注我们 | 作者:vcjmhg| 编辑:李明康| 责编:袁睿斌 | 设计:叶修缘丶 1 概述 之前几篇文章,我们着重介绍了在对 SkyWalking 进行二次开 ...

  3. 做一个计算器_如何设计一个JavaScript插件系统,编程思维比死磕API更重要

    WordPress有插件. jQuery有插件.Gatsby.Eleventy和Vue也是如此. 插件是库和框架的常见功能,并且有一个很好的理由:它们允许开发人员以安全,可扩展的方式添加功能.这使核心 ...

  4. c语言把一个数组赋值给另一个数组_如何把一个固定数组的值传递给另外一个数组...

    大家好,今日我们继续讲解VBA数组与字典解决方案,今日讲解的是第34讲:数组的传递.在应用数组的时候,我们往往需要要把数组的值由一个数组传递给另外一个数组,就如同变量的传递一样: A=B '把B值赋给 ...

  5. java测试一个泰勒级数_自己 推导一个 泰勒级数

    一开始 的 时候,  以为 泰勒级数 是   f ( x )  和 n 阶导数 之间 的 关系,  或者  f ( x ) 的   1 阶导数 和  2 阶 .3 阶 -- n 阶导数 之间 的 关系 ...

  6. 如何更好的掌握一个知识点_如何成为一个更好的讲故事的人3个关键点

    如何更好的掌握一个知识点 You're launching a digital transformation initiative in the middle of the ongoing pande ...

  7. eclipse如何导入一个项目_如何建立一个完美的 Python 项目

    当开始一个新的 Python 项目时,大家很容易一头扎进去就开始编码.其实花一点时间选择优秀的库,整合进项目将为以后的开发节省大量时间,并带来更快乐的编码体验. 在理想世界中,所有开发人员的关系是相互 ...

  8. 网站测压机器人_压力测试工具(bots)

    压力测试工具(bots) bots机器人介绍: bots就是机器人,可以模拟客户端的连接.通讯.操作等,是一种对服务端进行模拟测试的轻量级客户端程序,并且bots没有渲染等部分.引擎提供了Python ...

  9. 页面怎么创建一个数组_怎么创建一个企业网站?

    怎么创建一个企业网站?互联网时代下,很多企业都纷纷搭建网站,网站不仅可以提高企业形象,还可以为企业带来盈利,那么怎么创建一个企业网站呢?下面小编来告诉你怎么搭建企业网站. 1.网站定位 做好企业网站建 ...

最新文章

  1. 甲骨文推出全新Oracle Cloud at Customer
  2. 上下文保存 中断_Linux内核中断顶半部和底半部的理解
  3. 科大星云诗社动态20210321
  4. 反思代码优化点:充分使用错误处理机制
  5. 30%企业定位平台型,不会出现类似BAT巨头
  6. oracle绑定变量过多,oracle - 在SQL Plus中使用绑定变量并返回多行? - 堆栈内存溢出...
  7. python里类的概念
  8. java scanner类 构造器,Java Scanner类
  9. 微信小程序滚动条返回顶部
  10. 直方图中最大的矩形(单调栈2)
  11. Golang解析yaml格式文件
  12. NLP --- 隐马尔可夫HMM(EM算法(期望最大化算法))
  13. 音乐彩灯控制器C语言程序,基于单片机的LED彩灯控制器
  14. sql 树形 子节点获取最顶级的节点
  15. ERROR: Command errored out with exit status 1
  16. 产品经理是做什么的?
  17. Unity 一起看+弹幕 Socket通信
  18. 键盘输入盲打训练, 打字练习,打字游戏 打字教程推荐
  19. 闪兼云带你游历互联网网赚的不同时代
  20. pet store宠物商店数据库设计

热门文章

  1. IDEA文件出现java file out of source root解决方法
  2. 图卷积神经网络GCN---空间卷积层代表作
  3. idea keymap之前选择成 Eclipse 后,idea默认的快捷键Default找不到了的解决办法
  4. JME2 和JME3的比较
  5. LANDESK操作系统部署时,怎么默认恢复到客户端C盘配置
  6. RFID技术应用及其发展趋势分析
  7. Rman 在非归档模式增量備份
  8. 收集各种 iOS App 开发可以用到的代码示例
  9. Grid ++ MIME 类型配置 载入报表数据,检查此URL及其数据,错误提示 网络服务器响应不成功
  10. 我怀疑京东神秘部门Y,悟出智能供应链真相了