《the art of software testing》 第三章 人工测试
- 在深入研究较为传统的计算机测试技术之前,要先进行“人工测试”。
- 代码检查与走查是两种主要的人工测试方法。
- 代码检查与走查是对过去桌面检查过程(在提交测试前由程序员阅读自己程序的过程)的改进。与原方法相比,代码检查与走查更为有效,因为在实施过程中,除了软件编写者本人,**还有其他人参与进来。 **
- 对于某些特定类型的错误,人工方法比基于计算机的方法更有效,而对于其他错误类型,基于计算机的方法更有效。这就意味着,代码检查/走查与基于计算机的测试是互补的。
代码检查
代码检查就是以组为单位阅读代码。
代码检查小组人员构成(通常4人):协调人、程序编码人员、程序设计人员、测试专家。
检查进行时的主要活动:
1. 由程序编码人员逐条语句讲述程序的逻辑结构。在讲述的过程当中,小组软件的其他成员应提问题、判断是否存在错误。
2. 对着历来常见的编码错误列表分析程序。
代码走查
代码走查也是以小组为单位进行代码阅读;
不同于阅读程序或使用错误检查列表,代码走查的参与者使用了计算机;
会议期间使用测试用例,其作用是提供了启动代码走查和质疑程序员逻辑思路及其设想的手段 。
桌面检查
桌面检查可视为由单人进行的代码检查或代码走查:由一个人阅读程序,对照错误检查列表检查程序,对程序推演测试数据;
桌面检查的效率低,因为它是一个完全没有约束的过程;
违反了测试原则:人们一般不能有效的测试自己编写的程序。
同行评分
同行评分是一种依据程序整体质量、可维护性、可扩展性、易用性和清晰性对匿名程序进行评价的技术。该项目技术的目的是为程序提供自我评价的手段
一点总结
看完本章,对软件测试中的人工测试有了点体会。我们一般会认为,程序是为了供机器执行而编写的,那么,也应该由机器来对程序进行测试,这种想法是错误的!在进行计算机测试前,先进行人工测试,在暴露程序错误方面非常有效!大多数软件项目都应该使用到以下的人工测试方法:
- 利用错误检查列表进行错误检查
- 代码检查与走查
- 桌面检查(不推荐!)
- 同行评审
在以上方法中,个人认为会用错误检查列表非常之关键!
10/8/2015 5:18:58 PM
《the art of software testing》 第三章 人工测试的更多相关文章
- 《the art of software testing》 (1-2)章
软件测试的心理学,重点是要认清: 测试时为发现错误而执行程序的过程 成功的测试:如果在测试某段程序时发现了错误,而且这些错误是可以修复的,就将这次合理设计并得到有效执行的测试称作是"成功的& ...
- 《The art of software testing》的一个例子
这几天一直在看一本书,<The art of software testing>,里面有一个例子挺有感触地,写出来和大家分享一下: [问题] 从输入对话框中读取三个整数值,这三个整数值代表 ...
- 《the art of software testing》第六章
更高级别的测试 模块测试的目的是发现程序模块与其接口规格说明之间的不一致 功能测试的目的是为了证明程序未能符合其外部规格说明 系统测试目的是为了证明软件产品与其初始目标不一致 功能测试,作者从三个方面 ...
- 《the art of software testing》第四章 测试用例的设计
白盒测试 逻辑覆盖测试: 逻辑覆盖是以程序内部的逻辑结构为基础的设计测试用例的技术.它属白盒测试.白盒测试的测试方法有代码检查法.静态结构分析法.静态质量度量法.逻辑覆盖法.基本路径测试法.域测试.符 ...
- 《the art of software testing》第五章
构建大型程序测试的第一个步骤:模块测试 测试用例的设计 在为模块测试设计测试用例时,需要两种信息:模块的规格说明和模块源代码: 模块测试总体上面向白盒测试: 模块测试的测试用例设计过程:使用一种或多种 ...
- Exploratory Software Testing
最近找到去年上半年看过一本关于测试方面书籍的总结笔记,一直放在我的个人U盘里,当时是用Xmind记录的,现在重新整理下分享给大家了! James A.Whittaker [美] 詹姆斯·惠特克(软件测 ...
- 第三章 传奇的开始--Delphi(附读书笔记)
第三章 传奇的开始--Delphi "是惊世之作的Delphi让Borland重新站了起来,没有当初的Delphi,就没有今日的Borland!" "是Turbo Pas ...
- 软件测试software testing summarize
软件测试(英语:software testing),描述一种用来促进鉴定软件的正确性.完整性.安全性和质量的过程.软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对 ...
- CentOS 7.4 初次手记:第三章 CentOS基础了解
第三章 CentOS基础了解... 36 第一节 语言编码.终端... 36 I 查看语言编码... 36 II Tty?.pts/?. 36 第二节 bash/sh command. 38 I 查找 ...
随机推荐
- mysql5.7不支持0000-00-00 00:00:00的默认时间设置
方案一: 数据不多的话把原有的5.53的数据改一下符合要求(数据库时间字段里千万不能出现0000-00-00 00:00:00这样的值),然后导出.sql文件,导出的.sql文件里把 DEFAULT ...
- FPGA论剑
今天走在街上,听到了久违的<光辉岁月>,想起6月30号那天,街边所有的餐厅.小店都在播放beyond的经典之作,那天是香港殿堂级乐队beyond乐队主唱兼吉他手黄家驹先生的忌日.黄家驹先生 ...
- (转)IE=EmulateIE7 标签的作用
本文转载自:http://www.cnblogs.com/0000/archive/2009/11/01/1593851.html 对于 Web 开发人员来说,文本兼容性是一个要考虑的重要问题.Win ...
- I/O通信模型(BIO,NIO,AIO)
一.传统的BIO 网络编程的基本模型是Client/Server模型,也就是两个进程之间进行相互通信,其中服务端提供位置信息(绑定的IP地址和监听端口),客户端通过连接操作向服务端监听的地址发起连接请 ...
- 杂项:UN-HTML
ylbtech-杂项:HTML 1.返回顶部 2.返回顶部 3.返回顶部 4.返回顶部 5.返回顶部 6.返回顶部 7.返回顶部 8.返回顶部 9.返回顶部 1 ...
- EasyUI 读数据库图
EasyUI 读数据库图 function edit_dg() { //选中一行,获取这一行的主键值 var idImg = $("#tbDeviceClassBrowstab") ...
- android滚条简单说明
先看一下我自己写的布局,电脑屏幕太小,只截取到了一个radiobutton. 先画一个horizontalScrollView,因为我要做水平滚动,然后我需要水平布局,就添加了一个LinearLayo ...
- 从request获取各种路径总结 request.getRealPath("url")
转载:http://blog.csdn.net/piaoxuan1987/article/details/8541839 equest.getRealPath() 这个方法已经不推荐使用了,代替方法是 ...
- Pandas统计计算和描述
Pandas统计计算和描述 示例代码: import numpy as np import pandas as pd df_obj = pd.DataFrame(np.random.randn(5,4 ...
- 利用 Flask+Redis 维护 IP 代理池
代理池的维护 目前有很多网站提供免费代理,而且种类齐全,比如各个地区.各个匿名级别的都有,不过质量实在不敢恭维,毕竟都是免费公开的,可能一个代理无数个人在用也说不定.所以我们需要做的是大量抓取这些免费 ...