软件测试经典名言----鉴其智慧/取其神髓

来源:互联网 发布:镜像映射的变换矩阵 编辑:程序博客网 时间:2024/04/28 20:15

软件测试经典名言----鉴其智慧/取其神髓

高橋寿一/片山徹郎  资料整理/翻译  东北藏

高橋寿一

即使再优秀的开发者面对软件出现的问题时测试应该是最好的解决办法了。软件测试起到了什么作用呢?避开晦涩难懂的说明,看看前辈们的名言吧。

 

バグを全部見つけるのは無理だと心得よ。」by Cem Kaner

(我的心得是,企图找出所有的BUG是不现实的。)

并非回避责任,软件是十分复杂的产品,要去除所有的BUG是不可能的。

 

エラーは見つからないだろうという仮定のもとにテストの計画を立ててはいけないby G.J.Mayers

一开始就怀疑是否能找出错误是制定不出测试计划的。)

很多人对自己编写的程序或参加开发的制品持有没什么错误的心理,进行开发及测试的。正因为如此,在测试阶段往往不容易发现BUG,而是产品上市后由用户指出。

 

「プログラム開発グループは、自分たちのプログラムをテストしてはいけない。by G.J.Mayers

程序开发小组不应该测试自己编写的程序。)

看似简单,可执行起来就困难了。为什么呢?在日本,大部分的测试都是由开发者自己进行的。事实上,即使再小的项目,测试的人员和编程的人员应该分开。

 

「プログラムのある部分でエラーがまだ存在している確率は、すでにその部分で見つかったエラーの数に比例する。by G.J.Mayers

程序的某部分中仍然存在错误的可能性与从这部分检测出的错误数成比例。)

BUG往往并不是均匀地分散在程序中,而存在于特定的部分。要报告调查,47%BUG存在于程序的4%的某部分。程序由简单的计算部分和非常复杂的算法部分等结构组成。复杂的部分往往存在很多BUG,所以,这样的复杂的部分需要彻底测试是重要的手法之一。

 

总结一下上述名言,要是对读者在测试手法的选择和应用上有帮助,是非常荣幸的事情。

「ソフトウェアテストで重要なのは、どの部分にバグが出やすいのか、そこにどのようなテスト手法を適用すれば十分な品質が得られるかを知ることである。by高橋寿一

知道哪个部分容易产生BUG,这部分需要应用什么测试手法能保证质量,是软件测试中至关重要的。)

 

片山徹郎

「テストでプログラム中のバグの存在は示せてもバグ存在しないということは示しえない。 by EW Dijkstra

(程序测试只能证明错误的存在,而不能证明错误不存在。

 

「テストとはエラーを見つけるつもりでプログラムを実行する過程である。by G.J. Myers

测试就是运行程序发现错误的过程

 

「テストとは、プログラムを既知の環境下で選ばれた入力により実行した結果に基づいて、その動作特性を推論する過程である。」 by J.B. Goodenough

(测试就是让程序在已知的环境下根据特定输入的结果推测运行特性的过程。)

 

「テストとは、サンプルデータの集合でプログラムを実行することにより、プログラムの動作を調べること。 by W.R. Adrion

(测试就是执行程序,用样本数据检验程序的运行。

 

「テストとは、エラーを明らかにするために、プログラムコードを管理しながら実行すること。 by M.S. Deutch

测试就是管理程序代码的同时执行代码,以明确错误。)

 

其他

很多先辈及机构公开的关于测试的定义如下:

 

「テストとは、手作業又は自動化された方法で、それが規定された要求事項を満たすかどうかを検証し、あるいは期待される結果と実際の結果との差異を識別するために、システム又はシステム構成要素を実行し、又は評価する過程。」by IEEE

测试就是通过手工或自动化的方法,运行及评价系统或系统的构成要素,以明确是否满足了规定的要求事项或识别期待结果与实际结果的差异

 

「テストとは、エラーを見つけ出すために、サンプル入力を用いてプログラム実行すること。by M.S. Deutch

(测试就是运行程序,应用测试输入检出错误。

 

「テストとは、エラーをなるべく見つけること、そしてエラーが見つからなければそのプログラムの品質に対する確信が増すこと、を目的として、プログラムを選んだデータで実行し、その結果を評価する作業である。by 玉井哲雄

(测试就是尽量发现多的错误,以及若没有发现错误以提高程序品质确认度为目的,通过特定数据运行程序及评价其结果的作业。

 

「テストとは、選定したデータの集合でプログラムを実行することにより、品質を評価する作業である。テストの目的は、妥当な品質評価を行うためにエラーを極力摘出し、エラーを摘出しなかった部分については、一定品質を保証することである。by 保田勝通

(测试就是,由特定的数据集合运行程序以评价其品质的作业。测试的目的为,极力找出错误以进行适当的品质评价,对没有找出错误的部分则能保证其一定的品质。)

 

 

Main Refrence

知識ゼロから学ぶソフトウェアテスト----高橋寿一

ソフトウェアテストに求められている役割と課題----片山徹郎

 

 (※※谨以此文献给2007年愚人节,同时献给从事测试的朋友!)