书籍详情
《软件测试技术基础教程》[45M]百度网盘|亲测有效|pdf下载
  • 软件测试技术基础教程

  • 出版社:电子工业出版社
  • 出版时间:2015-03
  • 热度:6462
  • 上架时间:2024-06-30 09:08:33
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

编辑推荐

适读人群 :适用于高等院校软件测试课程的教材,也可作为软件测试爱好者的自学用书。对于那些希望增强软件测试方面知识的程序员、软件项目经理和软件开发团队的其他人员,本书也具有很好的参考价值。
  紧密结合软件测试工作岗位要求
  全面系统地介绍软件测试理论及应用技术
  内容全面实用,讲述浅显易懂
  通过经典实用的测试案例传授实战技术
  手把手教你学会常用的测试工具

内容简介

  《软件测试技术基础教程(第2版)》全面系统地介绍了软件测试理论及应用技术。全书分为两部分:第1部分为软件测试基础理论部分,包括软件测试的基础知识,白盒测试技术,黑盒测试技术,软件测试计划、文档及测试用例,软件自动化测试,面向对象的软件测试,Web网站测试;第2部分为软件测试工具实践,用实际案例介绍了目前比较流行的单元测试工具JUnit、性能测试工具LoadRunner、测试管理工具Quality Center的使用。
  《软件测试技术基础教程(第2版)》既可作为高等院校软件测试课程的教材,也可作为软件测试爱好者的自学用书。对于那些希望增强软件测试方面知识的程序员、软件项目经理和软件开发团队的其他人员,《软件测试技术基础教程(第2版)》也具有很好的参考价值。

作者简介

  顾海花,副教授,长期从事软件测试专业的教育教学改革工作,有丰富的教学经验和校企合作背景。
  本教程是由一支有8年以上教学经验的团队编写,将多年各界的具有实用价值的经验、知识点和操作技巧等毫无保留地奉献给广大读者。

目录

第1部分 软件测试基础理论
第1章 软件测试基础知识
1.1 软件缺陷
1.1.1 软件缺陷案例分析
1.1.2 软件缺陷的定义
1.1.3 软件缺陷产生的原因
1.1.4 软件缺陷的修复费用
1.2 软件测试
1.3 软件测试的复杂性与经济性分析
1.3.1 软件测试的复杂性
1.3.2 软件测试的经济性
1.3.3 软件测试的充分性准则
1.4 软件测试的分类
1.4.1 按照软件测试的生命周期分类
1.4.2 按照软件测试技术分类
1.4.3 按照软件测试实施主体分类
1.4.4 按照测试内容分类
1.5 软件测试过程
1.5.1 软件测试与软件开发各阶段的关系
1.5.2 一个完整的软件开发流程
1.5.3 测试在开发阶段的作用
1.6 软件测试技术前沿
1.6.1 敏捷测试方法
1.6.2 测试驱动开发
1.6.3 云计算与软件测试
1.6.4 移动应用与软件测试
1.7 软件测试人员的素质
习题
第2章 白盒测试技术
2.1 逻辑覆盖测试
2.1.1 语句覆盖(Statement Coverage)
2.1.2 判定覆盖(Branch Coverage)
2.1.3 条件覆盖(Condition Coverage)
2.1.4 判定/条件覆盖(分支/条件覆盖
2.1.5 条件组合覆盖
2.1.6 路径覆盖
2.2 路径分析测试
2.2.1 控制流图
2.2.2 独立路径测试
2.2.3 Z路径覆盖测试
2.3 循环测试
2.3.1 简单循环
2.3.2 嵌套循环
2.3.3 串接循环
2.3.4 非结构循环
2.4 代码检查法
2.4.1 代码审查
2.4.2 桌面检查
2.4.3 代码走查
2.5 白盒测试综合策略
2.5.1 最少测试用例数的计算
2.5.2 测试覆盖准则
2.6 白盒测试设计案例
习题
第3章 黑盒测试技术
3.1 黑盒测试概述
3.2 等价类划分法
3.2.1 等价类划分法的概念
3.2.2 标准与健壮等价类划分
3.2.3 等价类划分法案例
3.3 边界值分析法
3.3.1 边界值分析法的概念
3.3.2 边界值分析法案例
3.4 决策表法
3.4.1 决策表法的概念
3.4.2 决策表法案例
3.5 因果图法
3.5.1 因果图法的概念
3.5.2 因果图法设计测试用例
3.6 测试方法的选择
3.7 黒盒测试设计案例
习题
第4章 软件测试计划、文档及测试用例
4.1 测试计划
4.1.1 测试计划的基本概念
4.1.2 测试计划的制订及其在软件测试过程中的地位
……
第2部分 软件测试工具实践
参考文献

精彩书摘

  《软件测试技术基础教程(第2版)》:
  1.软件的功能
  软件产品需要达到的标准决定了测试的数量。对于那些至关重要的系统必须进行更多的测试。一台在Boeing 757上的系统应该比一个用于公共图书馆中检索资料的系统需要更多的测试。一个用来控制银行证券实时交易的系统应该比一个简单的网上实时交流系统具有更大的可靠性与可信度。一个用于国防的大型安全关键软件的开发组比一个网络游戏软件开发组要有苛刻得多的查找错误方面的要求。
  2.目标用户的数量
  一个系统的目标用户数量的多少也在很大程度上影响了测试必要性的程度,这丰要是由于用户团体在经济方面的影响。一个在全世界范围内有几千个用户的系统肯定比一个只在办公室中运行的有两三个用户的系统需要更多的测试。如果出现问题,前个系统的经济影响肯定比后一个系统大。另外,在错误处理的分配上,所需花费代价的差别也很人。如果在内部系统中发现了一个严重的错误,处理错误的费用就会相对少一些。如果要处理一个遍布全世界的错误则要花费相当大的财力和精力,而且还会给开发公司造成严重的信誉危机和潜在用户的流失。
  3.潜在缺陷造成的影响
  在考虑测试的必要性时,还需要将系统中所包含的信息价值考虑在内。例如,一个支持许多家大银行或众多证券交易所的客户机/服务器系统中一定含有经济价值非常高的内容。由于银行证券系统的特殊性,一旦出现问题,影响的将不仅足银行或证券公司,错误将波及所有与银行或证券公司有业务往来的公司或个人,后果将非常恶劣。很显然,这样的人型系统和其他单一的小型应用系统相比,需要进行更多的测试。这两种系统的用户都希望得到高质量、无错误的系统,但是前‘种系统的影响比后一种要大得多。冈此我们应该从经济方面考虑,投入与经济价值相对应的时间和金钱去进行测试。
  4.开发机构的业务能力
  一个没有标准和缺少经验的开发机构很可能会开发出允满错误的软件系统,而’个建立了标准和有很多经验的开发机构开发出来的软件系统中的错误将会少很多。然而,那些需要进行大幅度改善的机构反而不大可能认识到白身的弱点。在许多情况下,机构的管理部门并不能真正地理解开发个高质最的软件系统的好处,反而那些些拥有很多经验和建立了严格标准的开发机构更加重视软件测试的重要性。
  5.测试的时机
  测试量会随时间的推移发牛改变。在一个竞争很激烈的市场里,争取时间可能是制胜的关键,开始可能不会在测试卜花多少时间,但几年后如果市场分配格局已经建立起来了.那么产品的质量就变得更重要了,测试量就要加大。测试量应该针对合适的目标进行调整。
  1.3.3软件测试的充分性准则
  软件测试的充分性准则有以下几点:
  ◇对任何软件都存在有限的充分测试集合。
  ◇当一个测试的数据集合对于一个被测的软件系统的测试是充分的,那么再多增加一
  些测试数据仍然是充分的。这一特性称为软件测试的单调性。
  ◇即使对软件所有成分都进行了充分的测试,也并不意味着整个软件的测试已经充分
  了。这一特性称为软件测试的非复合性。
  ◇即使一个软件的系统整体的测试是充分的,也并不意味着这个软件系统中各个成分
  都已经充分地得到了测试。这个特性称为软件测试的非分解性。
  ◇软件测试的充分性与软件的需求、软件的实现都相关。
  ◇软件测试的数据量正比于软件的复杂度。这一特性称为软件测试的复杂性。
  ◇随着测试次数的增加,检查出软件缺陷的概率随之不断减少。软件测试具有回报递减性。1.4软件测试的分类
  软件测试的整个生命周期其实是由一系列不同的测试阶段组成的。因而,可以从不同的角度对软件测试的分类进行划分。
  1.4.1按照软件测试的牛命周期分类
  按照软件测试的生命周期,可以将测试的执行过程划分为:单元测试、集成测试、确认测试、系统测试、验收测试。
  1.单元测试
  单元测试又称模块测试,单元测试是在软件开发过程中要进行的最小级别的测试,是程序员缩写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。在单元测试中,软件的最小单元是在与程序的其他部分相隔离的情况下进行测试的。
  单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。例如,你可能会向某字符串中添加某种模式的字符,然后确认该字符串是否包含这些字符。
  单元测试由程序员自己来完成,最终受益的也是程序员自己。可以这么说,程序员有责任编写功能代码,同时也就有责任为自己的代码编写单元测试代码。
  单元测试的目的在于检查每个程序单.元能否正确实现详细设计说明中的模块功能、性能、接口和设计约束等要求,发现各模块内部可能存在的各种错误。单元测试需要从程序的内部结构出发设计测试用例。对于多个模块,可以平行地、独立地进行单元测试。
  ……