本书全面地介绍了软件测试的基本理论、基本技术和常用方法以及近几年新的软件测试技术和方法。首先,从软件测试背景和软件开发过程入手,介绍软件测试的基本知识,以及软件质量保证SQA、软件能力成熟度模型CMM和能力成熟度整合模型CMMI等内容;然后,全面介绍黑盒测试、白盒测试、单元测试、集成测试、系统测试等测试技术和基本方法;最后,介绍目前比较流行的自动化软件测试工具,并介绍软件测试行业的现状和发展趋势以及如何成为合格的软件测试工程师。本书的特点是测试技术介绍全面,实践和理论并重,本书的另一个特色是实例多。本书着重介绍软件测试及管理技术理论中最重要、最精华的部分以及它们之间的融会贯通。本书既有整体框架
软件测试程序设计技术
✍ Scribed by 孙晶,杨波主编
- Publisher
- 电子工业出版社
- Year
- 2015
- Tongue
- Chinese
- Leaves
- 303
- Category
- Library
No coin nor oath required. For personal study only.
✦ Synopsis
本书从软件测试的基本理论出发,围绕TTCN-3核心语言国际测试标准,并结合大量的实际测试案例,对软件测试的相关方法与技术进行了详细的介绍,使读者能够更贴近实际的去了解软件测试。全书共分为10章,主要内容包括:软件测试概述、软件测试基础、TTCN树表描述语言简介、TTCN-3核心语言概述、TTCN-3类型声明、TTCN-3语句与函数、TTCN-3测试配置及操作、TTCN-3测试描述和控制、TTCN-3系统测试与测试工具和基于TTCN-3的软件测试案例。本书内容全面、实例丰富。
✦ Table of Contents
扉页
内容简介
前言
目录
第1章 软件测试概述
1.1 软件故障与软件测试
1.2 软件测试与软件开发过程
1.2.1 顺序生命周期模型 (Sequential Lifecycle Models)
1.2.2 渐进(Progressive Development)生命周期模型
1.2.3 迭代生命周期模型(Iterative Lifecycle Model)
1.3 软件测试方法与测试内容
1.3.1 黑盒测试
1.3.2 白盒测试
1.3.3 ALAC(Act-like-a-customer)测试
1.3.4 单元测试
1.3.5 综合测试
1.3.6 确认测试
1.3.7 α、β测试
1.3.8 系统测试
1.3.9 面向对象的软件测试
1.3.10 协议软件测试
1.4 软件测试原则与特点
1.4.1 软件测试的原则
1.4.2 软件测试特点
第2章 软件测试基础
2.1 软件测试白盒法
2.1.1 逻辑覆盖法
2.1.2 基本路径测试法
2.2 软件测试黑盒法
2.2.1 等价类划分法
2.2.2 边界值分析
2.3 小结
第3章 TTCN树表描述语言程序设计
3.1 协议一致性测试基础框架
3.1.1 协议一致性测试系统结构
3.1.2 X-协议一致性测试
3.2 测试系统行为描述
3.2.1 行为树
3.2.2 TTCN行为描述
3.3 TTCN数据类型和取值
3.3.1 预定义数据类型
3.3.2 取值
3.3.3 简单用户定义类型
3.3.4 构造类型
3.4 PCO和CP
3.4.1 通信模型
3.4.2 发送一个ASP
3.4.3 接收一个ASP
3.4.4 声明PCO类型
3.4.5 使用PCO和CP
3.4.6 PCO和CP快照
3.4.7 声明CP
3.5 发送语句
3.5.1 发送ASP
3.5.2 执行发送语句
3.5.3 发送一个PDU
3.5.4 发送协同信息
3.6 接收语句
3.6.1 接收ASP
3.6.2 执行接收语句
3.6.3 接收PDU
3.6.4 接收协同信息
3.6.5 OTHERWISE语句
3.7 定义ASP、PDU和CM类型
3.7.1 TTCN复合类型
3.7.2 类型链Chaining
3.7.3 ASN.1复合类型
3.7.4 局部类型定义
3.7.5 通过引用定义类型
3.7.6 定义ASP
3.7.7 定义PDU
3.7.8 构造ASP和PDU的子集
3.7.9 定义CM类型
3.7.10 在行为树中使用ASP和PDU
3.8 TTCN表达式
3.8.1 TTCN运算符
3.8.2 TTCN函数
3.9 说明ASP、PDU和CM值
3.9.1 Static和Dynamic链
3.9.2 复合ASN.1值
3.9.3 ASP约束
3.9.4 PDU的约束
3.9.5 构造类型的约束
3.9.6 CM约束
3.10 约束引用
3.10.1 参数化的约束
3.10.2 发送和接收约束
3.10.3 约束与OTHERWISE语句
3.11 接收约束值匹配
3.11.1 指定值(Specific Value)
3.11.2 匹配机制(Matching Mechanisms)
3.12 编码
3.13 引用复合类型元素
3.13.1 在SEND和RECEIVE语句的上下文中引用
3.13.2 引用ASN.1元素
3.13.3 捕获接收到的ASP和PDU
3.14 裁决(Verdicts)
3.14.1 结果变量(Result Variable)
3.14.2 初步结果
3.14.3 最终结果(Final Verdicts)
3.15 GOTO语句
3.16 定时器语句
3.17 常量与变量
3.18 动态行为描述
3.19 使用别名
3.20 测试例模块化
3.20.1 测试步
3.20.2 缺省行为
3.21 TTCN中的参数列表
3.22 测试例选择
3.23 TTCN测试套结构
第4章 TTCN-3基本语言元素
4.1 TTCN-3概述
4.1.1 实例
4.1.2 范围规则
4.1.3 参数化
4.2 数据类型和值
4.2.1 基本类型和值
4.2.2 基本类型的子类型
4.2.3 记录类型
4.2.4 集合类型
4.2.5 枚举类型
4.2.6 联合类型
4.3 任意类型
4.4 数组
4.5 递归类型
4.6 类型的兼容
4.6.1 记录类型兼容性
4.6.2 枚举类型兼容性
4.6.3 子结构化的兼容性
4.6.4 成分类型的类型兼容性
4.6.5 通信操作的类型兼容性
4.6.6 类型变换
4.7 模块(Modules)
4.7.1 模块命名
4.7.2 模块参数
4.7.3 模块定义
4.7.4 模块控制
4.7.5 从模块导入
4.7.6 引入规则
4.8 运算符
4.8.1 算术运算符
4.8.2 串运算符
4.8.3 关系运算符
4.8.4 逻辑运算符
4.8.5 位运算符
4.8.6 移位运算符
4.8.7 循环移位运算符
第5章 类型声明
5.1 常量声明
5.2 变量声明
5.3 定时器声明
5.4 消息声明
5.5 过程特征声明
5.5.1 阻塞的和非阻塞的通信中的过程特征
5.5.2 过程信号的参数
5.5.3 远程过程的返回值
5.5.4 例外描述
5.6 模板声明
5.6.1 消息模板声明
5.6.2 过程信号模板声明
5.6.3 模板匹配机制
5.6.4 模板参数化
5.6.5 作为参数传递模板
5.6.6 修改模板
5.6.7 改变模板字段
5.6.8 匹配操作
5.6.9 操作的值
第6章 语句、函数、可选步与通信
6.1 程序语句和操作
6.2 基本的程序语句
6.2.1 表达式
6.2.2 赋值
6.2.3 日志语句
6.2.4 标签语句
6.2.5 Goto语句
6.2.6 If-else语句
6.2.7 for语句
6.2.8 While语句
6.2.9 do-while语句
6.2.10 停止执行语句
6.3 行为的程序语句
6.3.1 选择性行为
6.3.2 repeat语句
6.3.3 交叉的行为
6.3.4 返回语句
6.4 函数和可选步
6.4.1 函数
6.4.2 可选步
6.4.3 用于不同成分类型的函数和可选步
6.5 默认处理
6.5.1 默认机制
6.5.2 缺省引用
6.5.3 激活操作
6.5.4 去激活操作
6.6 通信操作
6.6.1 通信操作的通用格式
6.6.2 基于消息的通信
6.6.3 基于过程的通信
6.6.4 检查操作
6.6.5 控制通信端口
6.6.6 any和all与端口一起使用
6.7 定时器操作
6.7.1 启动定时器操作
6.7.2 停止定时器操作
6.7.3 读定时器操作
6.7.4 运行定时器操作
6.7.5 超时操作
6.7.6 与定时器一起使用的any和all的总结
第7章 TTCN-3核心语言程序设计
7.1 测试配置
7.1.1 端口通信模型
7.1.2 连接上的限制
7.1.3 抽象测试系统接口
7.1.4 定义通信端口类型
7.1.5 定义通信类型
7.1.6 SUT内部的编址实体
7.1.7 成分引用
7.1.8 定义测试系统接口
7.2 配置操作
7.2.1 创建操作
7.2.2 连接和映射操作
7.2.3 断开连接和取消映射操作
7.2.4 MTC、System和Self 操作
7.2.5 启动测试成分操作
7.2.6 停止测试成分操作
7.2.7 运行操作
7.2.8 完成操作
7.2.9 使用成分数组
7.2.10 带有成分的any和all的使用总结
第8章 测试描述与测试控制
8.1 描述属性
8.1.1 显示属性
8.1.2 值的编码
8.1.3 扩展属性
8.1.4 属性的范围
8.1.5 属性的重写规则
8.1.6 改变引入语言元素的属性
8.2 测试用例
8.3 测试判定操作
8.3.1 测试用例判定
8.3.2 判定值和重写规则
8.4 外部动作
8.5 模块控制部分
8.5.1 测试用例的执行
8.5.2 测试用例的终止(Termination of test cases)
8.5.3 测试用例的控制执行
8.5.4 测试用例选择
8.5.5 控制部分中定时器的使用
第9章 系统测试及测试工具
9.1 性能测试
9.1.1 性能测试的基本概念
9.1.2 性能测试方法
9.1.3 性能测试执行
9.1.4 性能测试案例分析
9.2 压力测试(负载测试、并发测试)
9.2.1 压力测试的基本概念
9.2.2 压力测试方法
9.2.3 压力测试执行
9.3 容量测试
9.3.1 容量测试基本概念
9.3.2 容量测试方法
9.3.3 容量测试执行
9.3.4 一个容量测试案例分析
9.4 健壮性测试
9.4.1 健壮性测试基本概念
9.4.2 健壮性测试方法
9.4.3 一个健壮性测试案例分析
9.5 安全性测试
9.5.1 安全性测试基本概念
9.5.2 安全性测试方法
9.5.3 一个安全性测试案例分析
9.6 可靠性测试
9.6.1 可靠性测试基本概念
9.6.2 可靠性测试方法
9.6.3 可靠性评价模型
9.6.4 可靠性测试执行
9.6.5 一个可靠性测试案例分析
9.7 恢复性测试与备份测试
9.8 兼容性测试
9.9 安装性测试
9.10 可用性测试
9.10.1 可用性测试的概念
9.10.2 可用性测试方法
9.11 配置性测试
9.11.1 配置性测试的概念
9.11.2 配置性测试方法
9.12 文档性测试
9.12.1 文档性测试的概念
9.12.2 文档性测试方法
9.13 GUI测试
9.13.1 GUI测试的概念及方法
9.13.2 一个GUI测试案例分析
9.14 验收测试
9.14.1 验收测试内容与策略
9.14.2 验收测试方法
9.15 回归测试
9.15.1 回归测试的概念
9.15.2 回归测试方法
9.16 测试工具及其应用
9.16.1 测试种类
9.16.2 QACenter
第10章 基于TTCN-3的软件测试案例
10.1 TTCN-3在IPv6一致性测试中的应用
10.1.1 IPv6测试集合的形式化描述
10.1.2 测试方法
10.1.3 IPv6测试集中的一个测试例
10.2 基于HTTP协议应用系统的测试
10.2.1 HTTP协议
10.2.2 HTTP协议软件一致性测试
10.3 天气预报服务的功能测试
10.4 魔兽游戏的测试
10.5 水果机游戏测试
10.6 即时通信软件测试案例分析
10.7 QQ是否在线测试
10.8 Web应用测试
附录A QQ在线测试抽象测试套编码
附录B Web应用测试详细的TTCN-3代码
📜 SIMILAR VOLUMES
<p>《软件测试技术》首先从一个宏观的角度对软件测试做了准确定位,然后对软件测试做了总体论述并描绘了软件测试的一个全貌;随后,以软件测试生命周期这样一个基本的软件测试过程为线索,逐层深入地向读者解密软件测试的内容和技术,在《软件测试技术》的后面还论述了测试过程的组织与管理、测试的度量和过程改进及相关模型。理论与实践的紧密结合是《软件测试技术》的最大特点,《软件测试技术》精心准备了一个独立软件项目,自始至终保持将各类测试内容附着于该项目中,做到了测试的连续性和完整性,实景回放式的叙述方式使读者如临其境,带来有如真实的工作体验。</p> <p>《软件测试技术》可以用作各类高等学校的软件测试专业及
<p>《软件测试技术》是计算机软件测试课程教材,主要内容包括软件测试概述、软件测试方法、软件测试过程、面向对象测试、测试的设计与实现、web测试、软件测试自动化、软件质量与质量保证、软件测试工具等内容。</p> <p>《软件测试技术》可作为高等学校计算机科学与技术专业的软件测试课程教材,也可作为计算机软件开发人员的参考书。</p>
本书详细地介绍了软件测试的各个方面,从测试概念、测试模型、测试过程、测试阶段等各个不同的视角来探讨软件测试的重要性,重点讲解了软件测试的各种方法和技术,并将它们应用在软件测试框架的不同阶段,以满足不同的应用系统测试的需求。本书尽量使软件测试的理论知识点具有良好的衔接性和系统性,使需求和验收测试评审、测试设计、执行测试与各个阶段的实际测试活动有机地结合起来,使读者更容易领会如何将测试的方法和技术应用到各个测试阶段和本地化测试中去。本书还讲解了丰富的实例和实践要点,更好地体现了软件测试学科的特点,帮助读者快速地将理论知识与实践结合起来。本书用了较大篇幅详细介绍了自动化测试的原理、方法和工具,通过一
本书分为4个部分,前3个部分为实验,第四部分为实训。实验是针对软件测试技术及测试用例设计的各类方法制定而成,总共30个实验,涵盖了各类常用的黑盒测试用例设计方法、白盒测试用例设计方法、常用测试技术应用等。各实验的开展均依据所需知识点进行讲解,并贯穿真实项目实例,使读者能够体会真实项目中各类方法的灵活应用,而并非纯粹介绍各方法的使用。实训部分提供了一套完整的真实项目测试设计案例,该案例涵盖了一般软件项目开展测试的全过程,对测试计划制定、测试用例设计、TestLink测试用例管理与统计、缺陷提交与跟踪及测试总结与分析进行了详细的阐述。帮助读者能够结合真实项目体验完整的软件测试工作流程。本教材内容全
本书是作者多年从事软件测试技术研究及课程教学的成果和经验总结。全书共分5部分,18章。第1部分(第1~第4章)是软件测试基础,涉及软件测试的一些基本概念和基础知识;第2部分(第5~第6章)详细讲述包括静态测试及动态测试在内的软件测试基本方法与技术;第3部分(第7~第8章)详细讲述包括缺陷管理、测试过程管理在内的软件测试管理方法与技术;第4部分(第9~第14章)详细介绍包括自动化测试、可靠性测试、安全性测试、国际化与本地化测试以及面向对象测试在内的现代软件测试方法与技术;第5部分(第15~第18章)是典型应用软件测试,重点介绍Web、移动、云计算、游戏以及嵌入式等应用的软件测试方法与技术。本书几