华信教育资源网
软件测试程序设计技术
作   译   者:孙晶,杨波 出 版 日 期:2015-11-01
出   版   社:电子工业出版社 维   护   人:袁玺 
书   代   号:G0273370 I S B N:9787121273377

图书简介:

本书从软件测试的基本理论出发,围绕TTCN-3核心语言国际测试标准,并结合大量的实际测试案例,对软件测试的相关方法与技术进行了详细的介绍,使读者能够更贴近实际的去了解软件测试。全书共分为10章,主要内容包括:软件测试概述、软件测试基础、TTCN树表描述语言简介、TTCN-3核心语言概述、TTCN-3类型声明、TTCN-3语句与函数、TTCN-3测试配置及操作、TTCN-3测试描述和控制、TTCN-3系统测试与测试工具和基于TTCN-3的软件测试案例。 本书内容全面、实例丰富、可操作性强,做到了理论与实践的有机结合。本书适合计算机专业高年级本科生和研究生作为教材或教学参考书,也适合作为软件测试和软件开发相关人员技术参考书。
您的专属联系人更多
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源

    本书资源

    本书暂无资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书从软件测试的基本理论出发,围绕TTCN-3核心语言国际测试标准,并结合大量的实际测试案例,对软件测试的相关方法与技术进行了详细的介绍,使读者能够更贴近实际的去了解软件测试。全书共分为10章,主要内容包括:软件测试概述、软件测试基础、TTCN树表描述语言简介、TTCN-3核心语言概述、TTCN-3类型声明、TTCN-3语句与函数、TTCN-3测试配置及操作、TTCN-3测试描述和控制、TTCN-3系统测试与测试工具和基于TTCN-3的软件测试案例。 本书内容全面、实例丰富、可操作性强,做到了理论与实践的有机结合。本书适合计算机专业高年级本科生和研究生作为教材或教学参考书,也适合作为软件测试和软件开发相关人员技术参考书。

    图书详情

    ISBN:9787121273377
    开 本:16开
    页 数:304
    字 数:536

    本书目录

    第1章  软件测试概述	1
    1.1  软件故障与软件测试	1
    1.2  软件测试与软件开发过程	2
    1.2.1  顺序生命周期模型
          (Sequential Lifecycle Models)	3
    1.2.2  渐进(Progressive Development)
          生命周期模型	4
    1.2.3  迭代生命周期模型(Iterative 
          Lifecycle Model)	5
    1.3  软件测试方法与测试内容	5
    1.3.1  黑盒测试	6
    1.3.2  白盒测试	6
    1.3.3  ALAC(Act-like-a-customer)
          测试	6
    1.3.4  单元测试	6
    1.3.5  综合测试	6
    1.3.6  确认测试	7
    1.3.7  α、β测试	7
    1.3.8  系统测试	7
    1.3.9  面向对象的软件测试	8
    1.3.10  协议软件测试	9
    1.4  软件测试原则与特点	10
    1.4.1  软件测试的原则	10
    1.4.2  软件测试特点	10
    第2章  软件测试基础	12
    2.1  软件测试白盒法	12
    2.1.1  逻辑覆盖法	12
    2.1.2  基本路径测试法	16
    2.2  软件测试黑盒法	21
    2.2.1  等价类划分法	21
    2.2.2  边界值分析	23
    2.3  小结	24
    第3章  TTCN树表描述语言程序设计	25
    3.1  协议一致性测试基础框架	25
    3.1.1  协议一致性测试系统结构	25
    3.1.2  X-协议一致性测试	26
    3.2  测试系统行为描述	27
    3.2.1  行为树	27
    3.2.2  TTCN行为描述	28
    3.3  TTCN数据类型和取值	30
    3.3.1  预定义数据类型	30
    3.3.2  取值	30
    3.3.3  简单用户定义类型	30
    3.3.4  构造类型	31
    3.4  PCOs和CPs	31
    3.4.1  通信模型	31
    3.4.2  发送一个ASP	31
    3.4.3  接收一个ASP	31
    3.4.4  声明PCO类型	31
    3.4.5  使用PCOs和CPs	32
    3.4.6  PCO和CP快照	32
    3.4.7  声明CPs	32
    3.5  发送语句	32
    3.5.1  发送ASP	32
    3.5.2  执行发送语句	33
    3.5.3  发送一个PDU	33
    3.5.4  发送协同信息	33
    3.6  接收语句	33
    3.6.1  接收ASP	33
    3.6.2  执行接收语句	34
    3.6.3  接收PDU	34
    3.6.4  接收协同信息	34
    3.6.5  OTHERWISE语句	34
    3.7  定义ASP、PDU和CM类型	35
    3.7.1  TTCN复合类型	35
    3.7.2  类型链Chaining	35
    3.7.3  ASN.1复合类型	35
    3.7.4  局部类型定义	36
    3.7.5  通过引用定义类型	36
    3.7.6  定义ASPs	36
    3.7.7  定义PDUs	37
    3.7.8  构造ASPs和PDUs的子集	38
    3.7.9  定义CM类型	38
    3.7.10  在行为树中使用ASPs和
           PDUs	39
    3.8  TTCN表达式	40
    3.8.1  TTCN运算符	40
    3.8.2  TTCN函数	41
    3.9  说明ASP、PDU和CM值	42
    3.9.1  Static和Dynamic链	42
    3.9.2  复合ASN.1值	43
    3.9.3  ASP约束	43
    3.9.4  PDU的约束	43
    3.9.5  构造类型的约束	44
    3.9.6  CM约束	45
    3.10  约束引用	45
    3.10.1  参数化的约束	46
    3.10.2  发送和接收约束	46
    3.10.3  约束与OTHERWISE语句	47
    3.11  接收约束值匹配	48
    3.11.1  指定值(Specific Value)	48
    3.11.2  匹配机制(Matching 
           Mechanisms)	50
    3.12  编码	52
    3.13  引用复合类型元素	53
    3.13.1  在SEND和RECEIVE语句的
           上下文中引用	53
    3.13.2  引用ASN.1元素	54
    3.13.3  捕获接收到的ASPs和
           PDUs	55
    3.14  裁决(Verdicts)	55
    3.14.1  结果变量(Result Variable)	56
    3.14.2  初步结果	56
    3.14.3  最终结果(Final Verdicts)	56
    3.15  GOTO语句	57
    3.16  定时器语句	57
    3.17  常量与变量	59
    3.18  动态行为描述	61
    3.19  使用别名	62
    3.20  测试例模块化	63
    3.20.1  测试步	63
    3.20.2  缺省行为	65
    3.21  TTCN中的参数列表	67
    3.22  测试例选择	68
    3.23  TTCN测试套结构	68
    第4章  TTCN-3基本语言元素	85
    4.1  TTCN-3概述	85
    4.1.1  实例	85
    4.1.2  范围规则	88
    4.1.3  参数化	90
    4.2  数据类型和值	93
    4.2.1  基本类型和值	93
    4.2.2  基本类型的子类型	95
    4.2.3  记录类型	97
    4.2.4  集合类型	99
    4.2.5  枚举类型	101
    4.2.6  联合类型	102
    4.3  任意类型	102
    4.4  数组	103
    4.5  递归类型	104
    4.6  类型的兼容	104
    4.6.1  记录类型兼容性	104
    4.6.2  枚举类型兼容性	105
    4.6.3  子结构化的兼容性	107
    4.6.4  成分类型的类型兼容性	107
    4.6.5  通信操作的类型兼容性	107
    4.6.6  类型变换	107
    4.7  模块(Modules)	108
    4.7.1  模块命名	108
    4.7.2  模块参数	108
    4.7.3  模块定义	109
    4.7.4  模块控制	110
    4.7.5  从模块导入	111
    4.7.6  引入规则	113
    4.8  运算符	119
    4.8.1  算术运算符	120
    4.8.2  串运算符	121
    4.8.3  关系运算符	121
    4.8.4  逻辑运算符	123
    4.8.5  位运算符	123
    4.8.6  移位运算符	124
    4.8.7  循环移位运算符	125
    第5章  类型声明	127
    5.1  常量声明	127
    5.2  变量声明	127
    5.3  定时器声明	127
    5.4  消息声明	128
    5.5  过程特征声明	129
    5.5.1  阻塞的和非阻塞的通信中的
          过程特征	129
    5.5.2  过程信号的参数	129
    5.5.3  远程过程的返回值	129
    5.5.4  例外描述	130
    5.6  模板声明	130
    5.6.1  消息模板声明	130
    5.6.2  过程信号模板声明	132
    5.6.3  模板匹配机制	133
    5.6.4  模板参数化	134
    5.6.5  作为参数传递模板	135
    5.6.6  修改模板	135
    5.6.7  改变模板字段	136
    5.6.8  匹配操作	137
    5.6.9  操作的值	137
    第6章  语句、函数、可选步与通信	138
    6.1  程序语句和操作	138
    6.2  基本的程序语句	140
    6.2.1  表达式	140
    6.2.2  赋值	140
    6.2.3  日志语句	140
    6.2.4  标签语句	141
    6.2.5  Goto语句	141
    6.2.6  If-else语句	142
    6.2.7  for语句	143
    6.2.8  While语句	143
    6.2.9  do-while语句	144
    6.2.10  停止执行语句	144
    6.3  行为的程序语句	144
    6.3.1  选择性行为	144
    6.3.2  repeat语句	149
    6.3.3  交叉的行为	149
    6.3.4  返回语句	151
    6.4  函数和可选步	152
    6.4.1  函数	152
    6.4.2  可选步	154
    6.4.3  用于不同成分类型的函数和
          可选步	157
    6.5  默认处理	157
    6.5.1  默认机制	157
    6.5.2  缺省引用	157
    6.5.3  激活操作	158
    6.5.4  去激活操作	158
    6.6  通信操作	159
    6.6.1  通信操作的通用格式	159
    6.6.2  基于消息的通信	161
    6.6.3  基于过程的通信	163
    6.6.4  检查操作	170
    6.6.5  控制通信端口	171
    6.6.6  any和all与端口一起使用	172
    6.7  定时器操作	172
    6.7.1  启动定时器操作	173
    6.7.2  停止定时器操作	173
    6.7.3  读定时器操作	173
    6.7.4  运行定时器操作	174
    6.7.5  超时操作	174
    6.7.6  与定时器一起使用的any和all
          的总结	174
    第7章  TTCN-3核心语言程序设计	175
    7.1  测试配置	175
    7.1.1  端口通信模型	175
    7.1.2  连接上的限制	176
    7.1.3  抽象测试系统接口	177
    7.1.4  定义通信端口类型	177
    7.1.5  定义通信类型	179
    7.1.6  SUT内部的编址实体	180
    7.1.7  成分引用	180
    7.1.8  定义测试系统接口	182
    7.2  配置操作	182
    7.2.1  创建操作	182
    7.2.2  连接和映射操作	183
    7.2.3  断开连接和取消映射操作	184
    7.2.4  MTC、System和Self 操作	185
    7.2.5  启动测试成分操作	185
    7.2.6  停止测试成分操作	186
    7.2.7  运行操作	186
    7.2.8  完成操作	187
    7.2.9  使用成分数组	188
    7.2.10  带有成分的any和all的使用
           总结	188
    第8章  测试描述与测试控制	189
    8.1  描述属性	189
    8.1.1  显示属性	189
    8.1.2  值的编码	189
    8.1.3  扩展属性	192
    8.1.4  属性的范围	192
    8.1.5  属性的重写规则	192
    8.1.6  改变引入语言元素的属性	194
    8.2  测试用例	194
    8.3  测试判定操作	195
    8.3.1  测试用例判定	195
    8.3.2  判定值和重写规则	195
    8.4  外部动作	196
    8.5  模块控制部分	197
    8.5.1  测试用例的执行	197
    8.5.2  测试用例的终止(Termination 
          of test cases)	197
    8.5.3  测试用例的控制执行	197
    8.5.4  测试用例选择	198
    8.5.5  控制部分中定时器的使用	199
    第9章  系统测试及测试工具	200
    9.1  性能测试	200
    9.1.1  性能测试的基本概念	200
    9.1.2  性能测试方法	200
    9.1.3  性能测试执行	201
    9.1.4  性能测试案例分析	202
    9.2  压力测试(负载测试、并发测试)	204
    9.2.1  压力测试的基本概念	204
    9.2.2  压力测试方法	205
    9.2.3  压力测试执行	206
    9.3  容量测试	206
    9.3.1  容量测试基本概念	206
    9.3.2  容量测试方法	207
    9.3.3  容量测试执行	208
    9.3.4  一个容量测试案例分析	208
    9.4  健壮性测试	210
    9.4.1  健壮性测试基本概念	210
    9.4.2  健壮性测试方法	210
    9.4.3  一个健壮性测试案例分析	211
    9.5  安全性测试	211
    9.5.1  安全性测试基本概念	211
    9.5.2  安全性测试方法	212
    9.5.3  一个安全性测试案例分析	217
    9.6  可靠性测试	219
    9.6.1  可靠性测试基本概念	219
    9.6.2  可靠性测试方法	219
    9.6.3  可靠性评价模型	219
    9.6.4  可靠性测试执行	222
    9.6.5  一个可靠性测试案例分析	223
    9.7  恢复性测试与备份测试	224
    9.8  兼容性测试	225
    9.9  安装性测试	225
    9.10  可用性测试	226
    9.10.1  可用性测试的概念	226
    9.10.2  可用性测试方法	227
    9.11  配置性测试	227
    9.11.1  配置性测试的概念	228
    9.11.2  配置性测试方法	228
    9.12  文档性测试	229
    9.12.1  文档性测试的概念	229
    9.12.2  文档性测试方法	230
    9.13  GUI测试	231
    9.13.1  GUI测试的概念及方法	232
    9.13.2  一个GUI测试案例分析	234
    9.14  验收测试	234
    9.14.1  验收测试内容与策略	234
    9.14.2  验收测试方法	235
    9.15  回归测试	235
    9.15.1  回归测试的概念	235
    9.15.2  回归测试方法	236
    9.16  测试工具及其应用	237
    9.16.1  测试种类	237
    9.16.2  QACenter	240
    第10章  基于TTCN-3的软件测试案例	243
    10.1  TTCN-3在IPv6一致性测试中的
          应用	243
    
    10.1.1  IPv6测试集合的形式化
           描述	243
    10.1.2  测试方法	244
    10.1.3  IPv6测试集中的一个
           测试例	245
    10.2  基于HTTP协议应用系统的
          测试	247
    10.2.1  HTTP协议	247
    10.2.2  HTTP协议软件一致性
           测试	248
    10.3  天气预报服务的功能测试	252
    10.4  魔兽游戏的测试	254
    10.5  水果机游戏测试	267
    10.6  即时通信软件测试案例分析	271
    10.7  QQ是否在线测试	279
    10.8  Web应用测试	284
    附录A  QQ在线测试抽象测试套编码	288
    附录B  Web应用测试详细的TTCN-3
             代码	290
    展开

    前     言

    前    言
    计算机技术已经越来越广泛地应用于国民经济和国防建设的各个部门,以不可阻挡之势渗透到人们工作和生活的各个领域,尤其在航天、航空、核能、通信、交通、金融等一些关键领域中,计算机的作用更加至关重要。同时,它们对计算机软件的可靠性和安全性也有严格的要求。近年来,由于软件错误而造成经济损失、导致严重后果的事件屡见不鲜,因此,如何保证软件产品的质量和可靠性就成为人们必须解决的一个重要问题,而软件测试便是保证软件质量的一个重要手段。据统计,国外在软件开发中,开发费用的近一半甚至更多要用于软件测试,由此也可以看出软件测试在软件开发中的重要地位。
    本书是为希望了解软件测试的相关技术,尤其是希望了解TTCN-3的读者而编写的。依托TTCN-3,本书给出了丰富且易于实践的案例,让读者能够做到理论与实践相结合,从而能够更加充分地理解和掌握软件测试的相关方法和技术。
    本书共10章,第1章是软件测试概述,第2章是软件测试基础,第3章是TTCN树表描述语言程序设计,第4章是TTCN-3基本语言元素,第5章是类型声明,第6章是语句、函数可选步与通信,第7章是TTCN-3核心语言程序设计,第8章是测试描述与测试控制,第9章是系统测试及测试工具,第10章是基于TTCN-3的软件测试案例。
    本书主要介绍如下内容。
    (1)介绍软件测试的基本方法,重点讨论软件测试黑盒法和白盒法。对软件测试的过程进行讨论,重点讨论软件测试的设计和测试文档的使用。
    (2)介绍TTCN-3核心语言的基本概念、语法结构和测试系统结构。通过学习可以掌握TTCN-3核心语言测试系统的设计与实现方法,能够设计小型协议软件、应用软件、嵌入式软件的测试系统,为实际从事测试工作奠定理论基础。
    (3)介绍如何利用TTCN-3进行实际的软件测试,结合多个测试案例进行详细的讲解。
    本书详细地讲述了软件测试的有关概念、方法、过程等方面的基础知识,也用大量篇幅讲解了TTCN-3的语法知识,并给出了丰富的案例,目的是使读者对软件测试有一个比较全面的了解,并为进一步研究软件测试技术奠定基础。
    本书中有大量的算法语句、程序语句及计算公式等,对于其中的变量,为了方便读者阅读,避免歧义,不再区分正、斜体,而是统一采用正体,特此说明。
    本书由孙晶、杨波主编,赵会群主审。
    由于编者水平有限,书中难免有疏漏和不当之处,敬请广大读者不吝指正。
    
    作  者
    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
  • 图 书 评 价
华信教育资源网