NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

测试的启示——像测试人员一样思考

  • 2009-10-14
  • 本文字数:1403 字

    阅读完需:约 5 分钟

Sharon Robson 是一名软件开发培训师,在其最近的一篇博客中,提到了 James Bach 在近期 STANZ 会议(Software Testing Australia &New Zealand,即澳大利亚和新西兰软件测试会议)上的发言,James 展示了一系列人们可以参考的、与测试相关的启示。

Heuristic(启发式的) 是一个形容词,形容基于经验的技术,而且这些技术有助于解决问题、学习和发现的过程。“启发式的方法(heuristic method)”特别用来指能够快速产生最佳答案的方法。Heuristics 就是“实用方法”、有依据的推测、直觉判断或是简单的常识。作为名词的 Heuristics 是启发式方法的另一个名字。 更精确地说,heuristics 是指一种策略,该策略使用易于得到而不完全适用的信息来控制人类或机器的问题的解决。

来源: http://en.wikipedia.org/wiki/Heuristics

Robso 说明了 Bach 在演讲中提到的 36 条启示,还有他提出的缩写:cidtestdsfdpotcrusspicstmplfdsfscura ,这些缩写可以分为 4 组:

Group 1——cidtestd,即:客户(Customers)、信息(Information)、开发者关系(Developer relations)、团队(Team)、设备和工具(Equipment & Tools)、日程(Schedule)、测试条目(Test Items)和可交付物(Deliverables)。这些关注与测试相关的高级规划活动、支持性条目和“装备”。它们有助于设置将要完成的测试所在的上下文。

Group 2——sfdpot,即:结构(Structures)、功能(Functions)、数据(Data)、平台(Platforms)、操作(Operations)和时间(Time)。我曾听 Karen N Johnson 在 San Francisco Depot(SFDPOT)上提到过这个缩写。这有助于人们理解测试将要进行的环境,也就是范围、资源和时间——质量三角形的三条边。在我看来,这是测试的关键所在,而我们却经常忽视其相关细节。

Group 3——crusspicstmpl,即:能力(Capability)、可靠性(Reliability)、可用性(Usability)、安全性(Security)、可延展性(Scalability)、性能(Performance)、可安装性(Installability)、兼容性(Compatability)、支持性(Supportability)、可测试性(Testability)、可维护性(Maintainability)、可移植性(Portability)和本地性(Localisability)。这是有关系统质量特性的一个很长的列表。我更喜欢 ISO 9126 标准(它更短小!),可这个列表覆盖了任何系统都需要考虑的关键属性。我真的很喜欢几乎每个词结尾的“ity”,这让我总能将“质量(qualITY)”放在心上。

Group 4——fdsfscura,即:功能测试(Function Testing)、领域测试(Domain Testing)、压力测试(Stress Testing)、流程测试(Flow Testing)、场景测试(Scenario Testing)、声明测试(Claims Testing)、用户测试(User Testing)、风险测试(Risk Testing)和自动化测试(Automatic Testing)。该列表指出了测试项目中可能、应该或必须完成的测试类型,让我们理解并指明测试不只一种方式,而且还能让我们更深入理解为什么如何进行测试。

Quality Tree Software 的 Elisabeth Hendrickson 以同样的基调,提出了一个 启示检查列表,指出了待测试应用要考虑的条目的领域。在 最近的一篇博客文章中,她指出:学着像测试人员一样思考,这能有助于防范在发布版本中出现重大问题。

只要是具备测试技能的人来进行,即使是最粗略的探索测试,也很可能发现问题。

您和您的团队使用什么样的测试启示或启发式方法呢?

查看英文原文: Testing Heuristics - Thinking like a tester

2009-10-14 09:121965
用户头像

发布了 479 篇内容, 共 152.5 次阅读, 收获喜欢 47 次。

关注

评论

发布
暂无评论
发现更多内容

TOGAF认证课由2天变化为5天的思考

周金根

企业架构 TOGAF

大数据任务调度 - 有向无环图(DAG)之拓扑排序

代立冬

大数据 数据结构 DAG 拓扑排序 Apache DolphinScheduler

LeetCode题解:232. 用栈实现队列,使用两个栈 入队 - O(n), 出队 - O(1),JavaScript,详细注释

Lee Chen

大前端

面试必问亿级流量优化策略之JVM调优,文档视频面试,还不收藏

小Q

Java 程序员 架构 JVM jvm调优

宅家三个月玩转算法,再战字节跳动,字节跳动面试官朝我比了个“ok”

编程 字节跳动 面试 算法

区块链赋能市场监管 浙江上线“黑科技”清除取证固证难题

CECBC

区块链 市场监管 取证难题

朱嘉明:全球科技革命正在逼近“奇点”,区块链影响未来人类社会的走向

CECBC

人工智能 科技 科技革命

JavaScript引擎的事件循环机制是怎样工作的?

Walker

Java 大前端 运行时栈帧 事件循环

.NET委托,事件和Lambda表达式

AI代笔

Dubbo-go应用维度注册模型

apache/dubbo-go

dubbo dubbo-go dubbogo

【高并发】Redis如何助力高并发秒杀系统,看完这篇我彻底懂了!!

冰河

多线程 高并发 秒杀 电商超卖 签约计划第二季

阿里培训官给新入职程序员的25条建议

Java架构师迁哥

央行数研所推出贸易金融区块链平台

CECBC

区块链 金融

从新浪数字化转型,窥见互联网的“懂行”新十年

脑极体

从外卖员到拼多多30K+程序员,我付出了三年的青春

小Q

Java 学习 程序员 架构 面试

甲方日常 13

句子

工作 随笔杂谈 日常

oeasy教您玩转linux 010211 牛说 cowsay

o

[翻译]Scalable Go Scheduler Design Doc[Go可扩展调度设计文档]

卓丁

golang scheduler Go scheduler Go 语言

LeetCode题解:232. 用栈实现队列,使用两个栈 入队 - O(1),出队 - 摊还复杂度 O(1),JavaScript,详细注释

Lee Chen

大前端 LeetCode

基于Goc的Golang代码VSCode实时染色方案

大卡尔

测试覆盖率 精准测试 Go 语言

藏在Java数组的背后,你可能忽略的知识点

Java架构师迁哥

架构师课作业 - 第十三周

Tulane

多线程与高并发之锁

彭阿三

多线程 多线程与高并发

记一种spring框架的想当然但错误的用法

小明同学

源码分析 最佳实践 Spring Framework bug

这篇文章,把中国科技的真实底子讲透了

CECBC

中国 科技 产业竞争

不要以为Bug写的好就是好程序员,其实这只占不到15%

小Q

Java 学习 程序员 架构 面试

架构师训练营第十四周

Melo

澳门金沙玩赢了钱提现不了异常注单未更新有什么办法处理?

丛林里的余光

异常检测 澳门金沙 提现不了

一文解开java中字符串编码的小秘密

程序那些事

java安全编码 java编码指南 UTF编码

区块链技术发展的十大趋势

CECBC

区块链 金融 安全问题

一点 Go Web 编程实践经验

Garfield

Go web Go 语言

测试的启示——像测试人员一样思考_研发效能_Shane Hastie_InfoQ精选文章