摘录自《探索式软件測试》(注:作者模仿了圣经十诫的语气和内容编写了软件測试戒律)

1.汝应用大量输入重复锤炼汝之应用程序

2.汝应贪图汝之邻居的应用程序

3.汝应亲自寻找睿智的预言家

4.汝不应崇拜无法重现的失效

5.汝应尊重汝的模型和自己主动化測试

6.汝应利用开发者的过错与他们作对

7.汝应醉心于谋杀应用程序(庆祝蓝屏吧)

8.汝应保持安息日(指产品公布时刻)的圣洁

9.汝应贪图开发者的源码

下面内容主要来自《探索式软件測试》。本人依据自己的理解对部分内容稍作了改动

3.汝应亲自寻找睿智的预言家

我们都知道,測试至少存在两个部分。首先我们使用输入数据,然后对结果进行检查。

我们将数据输入到软件中,然后測试该软件是否依照既定的方式回应这些输入。假设我们无法对结果进行验证,測试就无法有效进行。

关于所谓睿智的预言家,我们有兴趣的是“应用某些測试后。该应用程序是否依照既定的方式执行?”。这就须要我们的预言家(也就是測试的基准)清楚的了解在给定特定的输入和环境条件组合的情况下,程序应有的行为。(博主的理解:即要事先知道你要执行的測试会有如何的预期结果。博主更愿意把这个预言家叫做预期结果。

假设不知道预期结果,你也就无法推断程序返回的结果是不是正确。)

将測试基准进行自己主动化是一件非常困难的事,可是非常值得去最求,由于这不只能够创建一个非常有价值的測试工具,其本身也是一个启迪智慧的追求过程。即通过自己主动化的活动,你得到了一个更加聪明的測试者。不管你终于是否能成功地将測试基准自己主动化,强迫自己像它一样思考。经常比你可能选择做的其它不论什么事情更有工作效率。

4.汝不应崇拜无法重现的失效

我们都曾遇到这样的情况,不是吗?你遇到一个缺陷。一般是非常好的缺陷。可是却无法重现。

缺陷越好,你的感觉越不好。我以前见过很多优秀的測试人员,花了数小时甚至数天的时间试图重现一个他们仅仅见过一次的缺陷。

为了重现这样一个缺陷的尝试一般是英勇的,可是没有合适的工具。这些尝试仅仅能是浪费时间。而我看到的情况是时间被白白浪费了。而測试人员却没有意识到这点。我以前看到一个測试人员花了一整天的时间试图记起一个崩溃缺陷的重现步骤,可是没有成功。我更愿意那个測试人员把他的时间用在其他更好的地方。

和其他不论什么一个測试人员一样,我全然理解那种挫败的感觉,可是最求一个这种缺陷的结果往往是无法充分利用时间。

这条戒律的教育意义是双重的。第一、尽你最大努力注意并记住(或记录下来)对软件採取的測试步骤,同一时候记住应用程序的响应。第二、考虑使用调试器之类能追踪动作和软件状态的工具。这将去除重现缺陷时不少推測成分,并防止优秀的測试人员违背这条戒律。

博主理解:纵观全文。这条戒律的教育意义应该是有三重的。最后一条作者在前面提到了,但并没有在最后的归纳中写下

1、努力记录步骤和结果

2、尽量使用工具辅助

3、假设重现太困难。不要在它上面浪费太多时间,将你的时间投入到其他更有效率的測试中。这样对项目整体是更好的选择。

James Whittaker的软件測试戒律(二)的更多相关文章

  1. 软件測试系统文章(文件夹&链接在此)

    前言 我会在此账号上写一系列关于软件測试的文章,故在此置顶软件測试系列文章的文件夹和链接,以方便大家阅读! 文件夹 软件測试系列之入门篇(一) 软件測试系列之了解篇(二) 软件測试系列之黑白盒(三) ...

  2. PCI OP WiFi 測试(二):PCI对OP的要求

    PCI OP WiFi 測试(二):PCI对OP的要求 每次看PCI的文档.都一头雾水,本来就非常抽象.看英文就感觉更抽象.泛泛而谈的要求,看一次忘一次.仅仅好翻译成中文.没事就看看,知道指导思想. ...

  3. 移动App測试实战:顶级互联网企业软件測试和质量提升最佳实践

    这篇是计算机类的优质预售推荐>>>><移动App測试实战:顶级互联网企业软件測试和质量提升最佳实践> 国内顶级互联网公司測试实战经验总结.阿里.腾讯.京东.携程.百 ...

  4. mongodb3.0 性能測试报告 二

    mongodb3.0 性能測试报告 一 mongodb3.0 性能測试报告 二 mongodb3.0 性能測试报告 三 測试环境: 服务器:X86 pcserver   共6台 cpu:  单颗8核 ...

  5. 软件測试、ios中的測试概念以及步骤

    软件測试: 软件測试的目标是应该服务于软件项目的目标,能够通过建议反馈使用更加高效的方法和工具,提升软件开发效率以及软件开发质量.同一时候还能够通过过一些手段,更早.更快.很多其它地发现缺陷.从容减少 ...

  6. SWTBOK測试实践系列(4) -- 软件測试技术的黑白之道

    白盒測试和黑盒測试往往是项目中最受争议的两种測试类型,每一个人偏爱各不同.现实生活中行业人员大多喜欢白盒測试而忽视黑盒測试,那么项目中又应该怎样平衡这两类測试呢?我们先来看两个案例. 案例一: 某移动 ...

  7. 熊猫猪新系统測试之二:Mac OS X 10.10 优胜美地

    在第一篇windows 10技术预览版測试之后.本猫为大家呈现还有一个刚刚才更新的mac操作系统:"优胜美地".苹果相同一改以猫科动物为代号命名的传统.在10.9的Maverick ...

  8. Web安全測试二步走

    Web安全測试时一个比較复杂的过程,软件測试人员能够在当中做一些简单的測试,例如以下: Web安全測试也应该遵循尽早測试的原则,在进行功能測试的时候(就应该运行以下的測试Checklist安全測试场景 ...

  9. 菜鸟学Java(二十一)——怎样更好的进行单元測试——JUnit

    測试在软件生命周期中的重要性,不用我多说想必大家也都很清楚.软件測试有许多分类,从測试的方法上可分为:黑盒測试.白盒測试.静态測试.动态測试等:从软件开发的过程分为:单元測试.集成測试.确认測试.验收 ...

随机推荐

  1. (原) ubuntu下用pycharm2016.1专业版配docker编译环境(docker Interpreter)

    一:先创建docker-machine 先创建docker machine.我主机上的虚拟机是virtualbox.$ docker-machine create --driver virtualbo ...

  2. hive内部表、外部表、分区

    hive内部表.外部表.分区 内部表(managed table) 默认创建的是内部表(managed table),存储位置在hive.metastore.warehouse.dir设置,默认位置是 ...

  3. 【转】一件有趣的事:我用 Python 爬了爬自己的微信朋友

    偶然了解到 Python 里的 itchat 包,它已经完成了 wechat 的个人账号 API 接口,使爬取个人微信信息更加方便. 于是乎玩心一起,打算爬一下自己的微信. 步骤核心: 网页启动not ...

  4. 单独的 python 脚本文件使用 django 自带的 model

    django1.9.5&python3.4.4 文件结构 在一个爬虫脚本中将爬取的数据通过django自带的model保存到数据库   修改的文件(其余pycharm新建Django项目生成, ...

  5. django 中多字段主键(复合、联合主键)

    django中不支持双主键.多主键. 要实现类似功能可以: classMeta: unique_together=(("driver","restaurant" ...

  6. 主流Java数据库连接池分析(C3P0,DBCP,TomcatPool,BoneCP,Druid)

    主流数据库连接池 常用的主流开源数据库连接池有C3P0.DBCP.Tomcat Jdbc Pool.BoneCP.Druid等 C3p0: 开源的JDBC连接池,实现了数据源和JNDI绑定,支持JDB ...

  7. 轻量级Modal模态框插件cta.js

    今天给大家分享一款轻量级Modal模态框插件cta.js.这是一款无需使用jQuery插件,纯js编写的模态框弹出特效.效果图如下: 在线预览   源码下载 实现的代码. html代码: <se ...

  8. APUE信号-程序汇总

    APUE信号-程序汇总      近期重看APUE,发现对于非常多程序的要领还是没有全然理解.所以梳理下便于查看,并且有非常多值得思考的问题. 程序清单10- 1  捕获 SIGUSR1 和 SIGU ...

  9. CSS一个元素同时使用多个类选择器(class selector)

    CSS类选择器参考手册 一个元素同时使用多个类选择器 CSS中类选择器用点号表示.实际项目中一个div元素为了能被多个样式表匹配到(样式复用),通常div的class中由好几段组成,如<div ...

  10. Chrome 调用vue.js 记录

    一.今晚遇到一个问题,就是不能直接在 html 直接调用 js 代码的问题 二.会出现如下错误: Refused to execute inline script because it violate ...