《软件测试》读书笔记

读书笔记

  • 第一章
  • 第二章 软件开发过程
  • 第三章 软件测试的实质
  • 第四章 检查产品说明书
  • 第五章 闭着眼睛测试软件
  • 第九章 兼容性测试
  • 第十章 外国语言测试
  • 第十一章 易用性测试
  • 第十二章 测试文档
  • 第十三章 站测试
  • 第十四章 自动测试和测试工具
  • 第十五章 臭虫轰炸和Beta测试
  • 第十六章 计划测试工作
  • 第十七章 编写和追踪测试案例
  • 第十八章 告发现的问题
  • 第十九章 评价成效
  • 第二十章 软件质量评判

第一章

第一章主要是介绍软件测试的背景,在这章中,也举了一些很久远的例子,狮子王游戏BUG,奔腾的计算错误,这其实说明了,软件缺陷 这个概念从很早就已经被提出,从很早,研发人员就已经发现,软件可能会存在缺陷,并不是完美的。而当时所做的一些软件测试的工作,也不够完善,不够成体系,所以会有一些缺陷存在。当然,就算是目前,软件测试这个行业已经发展了好几十年,但其实仍然不能完全保证软件没有任何缺陷。但,软件测试的重要性,毋庸置疑。

此章中,还提到了软件缺陷的定义,如下图所示:

第四章 检查产品说明书

产品说明书,有时候又叫做需求文档,通常是利用文字和图形描述产品的书面文档。我们要对其进行测试。
黑盒测试:软件测试员只需要知道软件要做什么即可——而无法看到盒子中是如何运作的,只需要关注输入输出,只知道程序做什么。
白盒测试:软件测试员可以访问程序员的代码,并通过检查代码来协助测试。这里要注意,改动代码进行测试的话,就意味着有风险存在,需要谨慎。
静态测试:测试不运行的部分——只是检查和审阅。
动态测试:通常意义上的测试——运行和使用软件。
我们首先要对产品说明书进行高级审查:
1、设身处地为客户着想
2、研究现有的标准和规范(就像如果是客户端测试,要考虑到安卓和苹果对于软件的规范要求,两者明显是不同的)
3、审查和测试同类软件

第五章 闭着眼睛测试软件

在弄清楚程序的输入输出之后,就要开始设计测试用例,而如果是在没有产品说明书(需求稿)的情况下,就需要先进行探索测试,需要把软件当产品说明书对待,分步骤地逐项探索软件特性。
而在执行测试时,首先要执行通过测试,确保软件基本功能已经实现。
在设计用例时,书中首先介绍到了等价划分法,这个方法是按照类别去对测试用例进行分类,常为边界值、次边界值、空值、无效值。等价类划分法是用尽可能少的测试用例覆盖尽可能多的测试点。但也有可能产生遗漏。
软件测试员必须测试软件的状态和转换。一定要覆盖软件的所有状态去进行测试。
失败状态测试,常见为竞争条件、重复、重负和压迫。
常用的测试思维:
1、在做软件测试时,要从‘愚笨’的客户的角度出发,也就是无经验的客户,多思考他们会进行什么正常预期之外的操作。
2、在已经找到缺陷的地方再找找。常理而言,哪里找到的缺陷越多,就说明那里的软件缺陷越多,如果某个地方找到了很多缺陷,就需要再仔细复查此模块。
3、凭借经验、直觉和预感。

第九章 兼容性测试

这里需要注意,兼容性测试又常分为向前兼容和向后兼容,要对之前的老版本和未来的新版本做一些兼容性的测试,这里主要是对老版本进行兼容测试,对于app来说,尤其要注意对系统、机型、不同分辨率屏幕的支持。
同时还要注意数据共享的兼容性,app要注意与PC的数据共享性,与其它竞品应该也有数据共享,如果涉及时需要格外注意。

第十章 外国语言测试

这一章目前我的工作不会涉及到相关内容,但也还是要稍微注意一下不同文字内容的可点击范围的伸缩,以及文字的正确有效。

第十一章 易用性测试

易用性是交互适用性、实用性和有效性的集中体现。
对于UI而言,可能会存在争议,因为它属于主观性的意见。但有七个要素比较适用:符合标准和规范、灵活性、正确性、直观性、舒适性、实用性、一致性。

第十二章 测试文档

这里的测试文档是一个泛指,指的是产品说明,产品协议,指南,宣传图等等一系列文档。作为软件测试员对待软件文档要像对待代码一样给予同等关注和投入。
无论文档是什么形式,像客户一样去对待它,就是很好的测试手段。

第十三章 站测试

在测试 站时,首先应该建立状态表,把每个 页当作不同的状态,超级链接当作连接用的线,完整的状态图有利于更好地审视任务。
黑盒测试中主要针对的点:文字、超级链接、图形、表单、对象和其他功能。
除了黑盒测试,还需要做配置和兼容性测试:硬件平台、浏览器软件和版本、文字大小、调制解调器速率。
还需要检查其易用性。

第十四章 自动测试和测试工具

工具和自动化的主要属性:速度、效率、准确度和精确度、坚持不懈。
软件测试工具不能代替软件测试员——它们只能帮助软件测试员更好地工作。
测试工具分为侵入式和非侵入式,如果是仅用于监视和检查软件而不对其进行修改,为非侵入式。如果工具以任何方式修改代码或操纵操作环境,属于侵入式。
验证是自动测试软件要克服的一大难题。
随机测试,我所知道的是monkey,就是进行一系列随机测试,常用于测试是否有崩溃,属于收尾阶段需要进行的测试。
需要记住,自动化测试不是万能的。现在是敏捷开发的时代,软件更迭很快,验证也有可能难以实现,测试人员是不可或缺的。不能过分依赖自动化。

第十五章 臭虫轰炸和Beta测试

交叉测试是很重要的一环。如果有多个人在软件发布前查看,即使他们不是专业测试员,也能够找出专业测试员看不到的软件缺陷。
请他人检查软件有助于打破杀虫剂怪现象。观察别人解决问题的方式是学习新测试技术的好方法。
臭虫轰炸是指在一段时间内,选择软件某一块区域,所有测试员集中测试此块区域。
Beta测试是指软件分发给选定的潜在客户群,他们在实际环境中使用软件。此测试主要寻找的是配置、兼容性、易用性方面的软件缺陷。

第十六章 计划测试工作

软件测试计划是软件测试员与产品开发小组交流意图的主要方式。
测试计划过程的最终目标是交流(而不是记录)软件测试小组的意图、期望、以及对将要执行的任务的理解。
测试前必须要明确的清单:
1、高级期望
2、人、地点和事
3、定义
4、团队之间的责任
5、哪些要测试,哪些不要测试
6、测试阶段
7、测试策略
8、资源要求
9、测试员的任务分配
10、测试进度
11、测试案例
12、软件缺陷 告
13、频度和统计
14、风险和问题

第十七章 编写和追踪测试案例

仔细计划测试案例的四个原因:组织性、重复性、跟踪和测试证实。
测试新手或许不能控制项目所用的计划和文档的等级,但是应该努力使自己的工作尽可能富有成效。找出什么必要,什么不必要,调查研究运用技术的方式以加速进程,但是不要投机取巧。

第十八章 告发现的问题

这也许是软件测试员要完成的最重要——有时是最困难——的任务。
部分软件缺陷不修复的原因:
1、没有足够的时间
2、不算真正的软件缺陷
3、修复的风险太大
4、不值得修复
5、软件缺陷 告不够有效
告软件缺陷的基本原则:尽快 告软件缺陷、有效描述软件缺陷
要想有效 告软件缺陷,就需要以明显、通用和再现的形式描述它。设法找出收缩包围问题的具体步骤,不要想当然的接受任何假设,查找时间依赖和竞争条件的问题,与压迫和负荷相关的边界条件软件缺陷、内存泄漏或数据溢出等白盒问题会慢慢显露出来,状态缺陷仅在特定软件状态中显露出来,考虑资源依赖性,不要忽视硬件。

第十九章 评价成效

这一章主要讲通过不同频度评估测试员和项目的成效,获知一切是否按预定计划进行,如果不是,应该怎样修正

第二十章 软件质量评判

作为一个实际测试员,要对找出的软件缺陷负起责任,跟踪其整个生命周期,说服相关人员使其得以修复。
软件质量评判(QA)的主要职责是检查和评价当前软件开发过程,并设法打到防止软件缺陷出现的目标。通过对项目进行近似完全的控制、建立标准和方法论,有条理地仔细监视和评价软件开发过程来保证产品的质量。

此次阅读没有进行白盒测试相关的阅读,里面的代码也稍显老旧。此外,第21章,职业指导也没有在此写出。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年4月3日
下一篇 2021年4月3日

相关推荐