《软件测试的艺术》读书笔记

来源:百度文库 编辑:神马文学网 时间:2024/04/29 07:48:40

《软件测试的艺术》


在长假的第四个悠闲的中午,灭掉了《软件测试的艺术》这本书,好像最近看的号称“艺术”的书比较多,《生活的艺术》,《项目管理的艺术》还包括这本《软件测试的艺术》。一般来说,在IT行业一本书能够在25年之后出第二版的,那么这本书的生命力算是强的。

总的来说这本书讲的是中规中矩,感觉还是七十年代那种纯学术化的气息,让人联想到了大学的教科书。书的开头还是非常精彩的,非常哲理化的开头,讲述了测试的本质,之后是一些看得头晕的名词和方法,最后的两篇关于调试和极限测试的不错,而新加的网站测试内容让人有点失望。总的来说,对于想了解“软件测试”的同学还是可以去看看的,至于要学到什么的话,可能还要从其他地方继续深入了解。不过就了解测试的目的,一些常用名词的意义,以及一些基本的原则来说,这本书还是不错的。

开头的经典:
-          软件测试心理学:测试是为发现错误而执行程序的过程。软件不是为了证明软件是好的,发现错误是他的目标。
-          软件测试经济学:软件中包含的错误的总和永远是个未知数,所以要找到软件中包含的所有的错误,几乎是不可能的。
-          原则1:测试用例中一个必需部分是对与其输出或结果的定义。
-          原则2:程序员应当避免自己测试自己编写的程序。
-          原则3:编写软件的组织不应当测试自己编写的软件。
-          原则4:应当彻底检查每个测试的执行结果。
-          原则5:测试用例的编写不仅应当根据有效和与其的输入情况,而且也应当根据无效的和未预料到的输入情况。
-          原则6:检查程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了其不应该做的”。
-          原则7:应避免测试用例用后即弃,除非软件本身就是一个一次性的软件。
-          原则8:计划测试工作时不应默许假定不会发生错误。
-          原则9:程序某部分存在更多错误的可能性,与该部分已发现错误的数量成正比。
-          原则10:软件测试是一项极富创造性,极具智力挑战性的工作。

特别喜欢调试那个章节,感觉作者有过很多的代码的经历。

定位问题的原则:
1.  动脑筋
2.  如果遇到了僵局,就留到稍后解决。
3.  如果遇到了困境,就把问题描述给其他人听。
4.  仅将测试工具作为第二种手段。
5.  避免使用试验法-仅将其作为最后的手段。

修改错误的技术:
1.    存在一个缺陷的地方,很有可能还存在其他的缺陷。
2.    应纠正错误本身,而不仅是其症状。
3.    正确纠正错误的可能性并非100%。
4.    正确修正错误的可能性随着程序规模的增加而降低。
5.    应意识到改正错误会带来新错误的可能性。
6.    修改错误的过程是临时回到设计阶段的过程。
7.    应修改源代码,而不是目标代码。

特别是关于程序中出现的错误的分析,实际上是程序员提高最好的方法:
1.  什么原因导致的错误?
2.  如何避免这样的错误?
3.  如果更早的发现这样的错误?

几个不是很好的地方:
1.  翻译,也许给我有大学教科书感觉的不是作者本身,而是翻译的人的问题。
2.  印刷,我觉得这样内容少的书,为什么不用小本印刷,而要用这么大的,厚度又是这么没有质感,很不舒服。