



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、. 软件测试的艺术阅读笔记一、 软件测试的心里学和经济学软件测试的定义:确认计算机完成了其应该完成的功能,不执行其不该有的操作的一个或一系列过程。测试是为了发现错误而执行程序的过程。(从软件测试心理学定义)软件测试的策略:白盒测试和黑盒测试。黑盒测试:又称数据驱动的测试或输入输出驱动的测试。判定标准:穷举输入的测试。白盒测试:又称逻辑驱动的测试。判定标准:穷举路径的测试。无论是穷举输入或穷举路径的测试(完全测试)都是不可能的。软件测试的重要原则:1. 测试用例中一个必需部分是对预期输出或结果进行定义。2. 程序员避免测试自己编写的程序。3. 彻底检查每个用例执行的结果。4. 测试用例的编写应该
2、根据有效的、无效的、预料到的、未预料到的输入情况。5. 程序某部分存在更多错误的可能性与该部分发现的错误数成正比。6. 软件测试是一项极富创造性、极具智力挑战的工作。小结:贯穿本书的三个重要原则:1. 软件测试是为了发现错误而执行程序的过程。2. 一个好的测试用例具有较高的可能性发现目前尚未发现的错误。3. 一个成功的测试用例能够发现目前尚未发现的错误。二、 代码检查、走查与评审人工测试:非基于计算机测试的过程。代码检查与走查是两种主要的人工测试方法,它们的相似点:1. 代码检查与走查都是与小组为单位,阅读或检查特定的程序。2. 代码检查与走查是对过去桌面检查的改进。3. 代码走查的一个优点是
3、一旦发现错误,通常能很好在程序中定位。4. 代码检查和走查通常能发现70%左右的逻辑设计和编码错误,是测试结果结束后已知的错误的70%。5. 这两种方法对于新编写的程序或修改后的程序都非常有效。代码检查:所谓代码检查是以组为单位阅读代码,它是一些列规程和错误检查技术的集合。检查时主要进行两项活动:1. 由程序编码人员逐条语句讲述程序的逻辑结构,小组成员提问题,判断是否存在错误。2. 对着历来常见的编码错误列表分析程序。代码错误列表(只概述): 数据引用错误。 数据声明错误。 运算错误。 比较错误。 接口错误。精品. 输入输出错误。 其它检查。代码走查:与检查基本相同,只是规程稍有不同,错误检查
4、技术不同。桌面检查:由单人阅读程序,对照错误列表检查程序,对程序推演测试数据。效果远逊与前两种方法。同行评分:是一种根据程序整体质量、可维护性、可扩展性、易用性和清晰性对匿名程序进行评价的技术。小结:大多数软件项目都应该使用到以下的几种人工测试方法。 利用错误列表进行检查。 小组代码走查。 桌面检查。 同行评审。三、 测试用例的设计3.1 黑盒测试设计用例方法l 等价类划分尽可能减少用例总数,覆盖其它大部分测试用例。 设计用例步骤:1. 确定等价类2. 为每个等价类生成一个不同的编号3. 编写用例,尽可能覆盖更多的其它有效等价类。4. 编写用例,只覆盖一个无效等价类。l 边界值分析任何时候都应
5、该使用此方法。上述两种方法的缺点:不能覆盖到如输入条件的组合的用例。l 因果图因果图设计用例的优点: 能覆盖输入条件的组合的用例。 能指出规格说明的不完整性和不明确之处。 因果图是一种形式语言,用自然语言描述的规格说明可以转换为因果图。 生成用例过程:1. 将规格说明分解为可执行的片段。2. 确定规格说明中的因果关系(输入输出关系)。确定每个因果关系后都赋予一个编号,方便画因果图。3. 分析规格说明,将其转换为连接因果关系的布尔图。即因果图。4. 给图加上注解符号,说明不能联系起来的“因”和“果”。及布尔图中的约束条件。5. 将因果图转换成一个有限项判定表。表中每一列代表一个用例。6. 将判定
6、表转换成用例7. 基本的因果图符号包括,identity,not(非),or(或),and(与)。l 错误猜测利用直觉和经验猜测可能出现的错误类型,然后编写用例来暴露这些错误。3.2 白盒测试 设计用例方法:精品.l 语句覆盖l 判定覆盖l 条件覆盖l 判定/条件覆盖l 多重条件覆盖四、 模块(单元)测试 模块测试:是对程序中的单个子程序或过程进行测试的过程。 增量测试:将下一步要测试的模块组装到测试完成的模块集合中测试。 模块测试需要一个特殊的驱动模块(driver mode)和一个或多个桩模块(stub module)。 驱动模块:用来将测试用例作为输入参数传递给被测模块,并显示被测模块输
7、出结果。 桩模块:用来模拟被被测模块调用的模块功能的模块。如被测模块a,调用了模块b,桩模块即用来模拟b模块的功能。 增量测试相比于非增量测试的优点: 工作量要少一些,因为使用了测试过的模块来取代驱动模块或桩模块。 可以较早发现模块之间接口不匹配等问题。 容易调试程序。 能将测试进行的更加彻底,因为已测的模块得到了更加充分的测试。增量测试的策略: 自顶向下测试 自底向上测试五、 更高级别的测试 当程序无法实现其最终用户要求的合理功能是,就发生了一个软件错误。l 功能测试功能测试是一个试图发现程序与其外部规格说明之间存在不一致的过程。l 系统测试系统测试是寻找程序或系统与其初始目标不一致的过程。
8、 系统测试不局限于系统,也可以是一个程序。 系统测试必须要有一个书面的、可度量的目标。 系统测试的类型: 能力测试(就是功能测试,为了与上述功能测试区分) 容量测试(使用大数据量验证) 强度测试(在很短的时间内达到数据或操作的数量峰值) 易用性测试 用户界面的设计是否适合使用人群的智力、教育背景和使用环境? 程序的输出是否有意义、不模糊、没有杂乱信息? 错误提示信息是否直接、有效、有价值? 整体用户界面是否在语法、语义、格式、风格、缩写方面展现除了相当程度的概念完整性、基本一致性和统一性? 是否包含过多不太可能用到的选项?一个良好的软件可以向用户学习并开始向不同用户展示其经常访问的菜单项,且要
9、符合逻辑直觉。 对于所有输入系统是否返回了某些类型的即时确认信息?精品. 程序是否易于使用?如区分大小写的输入用户是否清楚? 安全性测试 (如涉及银行卡密码输入) 性能测试(如响应时间和吞吐量) 存储测试 配置测试(通常指硬件配置要求) 兼容性/配置转换测试 可靠性测试(如长时间运行) 可恢复性测试(首先需要明确可恢复性目标,说明系统如何从程序错误、硬件失效和数据错误中恢复过来) 适用性测试(常指可维护性目标) 文档测试(用户文档) 过程测试(常指人工操作)l 验收测试l 安装测试l 测试计划于控制一个良好的测试计划应包括: 目标。定义每个阶段的目标。 结束准则。如只有发现大于70个错误才能终止。 进度。每个阶段的时间表。 责任人。 用例库和用例标准。 工具 计算机时间 硬件配置 集成。如自顶项下的增量测试。 跟踪步骤 调试步骤 回归测试六、 调试 调试时执行一次成功的测试之后所要进行的工作。步骤:1. 错误定位2. 错误修改调试方法:l 暴力调
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 租房单间布局改造方案
- 公司新媒体管理制度
- 宁夏美术考试题库及答案
- 数学新课标考试题及答案
- 2026版《全品高考》选考复习方案生物805 第24讲 体液调节含答案
- 生猪屠宰厂场管理方案
- 安全生产管理方案
- 健康餐创新创业:从理念到实践
- 萍乡客服面试题及答案
- 天津幼儿面试题及答案
- 2025台州市椒江区辅警考试试卷真题
- 中学生零食消费情况调查与分析
- 国开本科《管理英语4》机考总题库及答案
- 软装行业竞品分析报告
- 公司收购公司协议书
- 基于移动端的互联网金融服务创新研究
- T∕CACM 024-2017 中医临床实践指南 穴位埋线减肥
- GB 45189-2025氰化物安全生产管理规范
- TWAA 011-2024 WLAN工业终端性能技术要求
- 新科粤版九年级上册初中化学全册课前预习单
- 2025-2030年中国抗菌肽行业发展状况及投资前景规划研究报告
评论
0/150
提交评论