书籍详情
嵌入式软件系统测试:基于形式化方法的自动化测试解决方案
作者:殷永峰,姜博 著
出版社:机械工业出版社
出版时间:2021-03-01
ISBN:9787111672425
定价:¥79.00
购买这本书可以去
内容简介
本书总结了作者多年的嵌入式软件系统测试的工程实践经验,基于形式化方法,提出了完整的自动化测试解决方案。全书从嵌入式系统的构成、分类和特点入手,介绍嵌入式软件工程及管理方法,讨论嵌入式软件系统测试理论及测试环境构建等技术,并结合航电系统嵌入式软件测试实例,为实现自动化测试提供有效的解决方案。本书既适合从事军用/民用领域嵌入式系统开发、验证及维护的专业技术人员阅读,也适合高等院校计算机、软件工程、嵌入式系统等专业的学生参考。
作者简介
暂缺《嵌入式软件系统测试:基于形式化方法的自动化测试解决方案》作者简介
目录
前言
缩略词汇表
第1章 嵌入式系统及软件 1
1.1 嵌入式系统概述 1
1.1.1 嵌入式系统与实时系统 1
1.1.2 嵌入式系统的特点 5
1.1.3 嵌入式系统的组成 6
1.1.4 嵌入式系统的应用领域 10
1.2 嵌入式软件概述 12
1.2.1 嵌入式软件分类 12
1.2.2 嵌入式操作系统 14
1.3 本章小结 26
第2章 嵌入式软件工程与质量特性 27
2.1 嵌入式软件工程 27
2.1.1 嵌入式软件开发模型 28
2.1.2 系统分析与软件定义阶段 30
2.1.3 软件需求分析阶段 30
2.1.4 软件设计阶段 33
2.1.5 软件实现阶段 33
2.1.6 软件测试阶段 33
2.1.7 软件验收与交付阶段 36
2.1.8 软件使用与维护阶段 38
2.2 嵌入式软件工程化管理 40
2.2.1 软件工程化管理 40
2.2.2 软件开发方法学 41
2.3 嵌入式软件的质量特性 42
2.4 本章小结 43
第3章 基于形式化方法的嵌入式软件系统测试技术 45
3.1 软件形式化测试技术概述 45
3.1.1 软件形式化测试概述 45
3.1.2 基于形式规约语言 46
3.1.3 基于有限状态机和时间自动机模型 49
3.1.4 基于统一建模语言 50
3.1.5 基于Petri网模型 51
3.1.6 基于马尔可夫链模型 52
3.1.7 基于自定义形式化测试描述语言 52
3.2 嵌入式软件形式化测试技术 53
3.2.1 基本概念 53
3.2.2 基于FSM的软件测试技术 57
3.2.3 基于EFSM的软件测试技术 58
3.2.4 实时扩展有限状态机模型 61
3.3 基于实时扩展UML与RT-EFSM的测试用例生成 72
3.3.1 UML与OCL基本概念及技术 72
3.3.2 UML与软件测试 77
3.3.3 UML实时扩展 79
3.3.4 基于实时扩展UML与RT-EFSM的测试用例生成过程 91
3.4 本章小结 111
第4章 实时嵌入式软件自动化测试描述技术 113
4.1 测试描述的概念及分类 113
4.1.1 测试描述的概念 113
4.1.2 测试描述的分类 114
4.2 实时嵌入式软件测试描述的特性 115
4.2.1 实时嵌入式软件测试的特点 115
4.2.2 RT-ESTDL的设计原则 116
4.2.3 RT-ESTDL的地位和作用 117
4.3 实时嵌入式软件测试描述语言的设计 118
4.3.1 RT-ESTDL的词法 118
4.3.2 RT-ESTDL的语法 120
4.4 RT-ESTDL对实时嵌入式软件测试的支持机制 122
4.4.1 对实时嵌入式设备建模的支持 122
4.4.2 对实时嵌入式软件测试时间约束及并发处理的支持 126
4.4.3 对实时嵌入式设备模型实时通信的支持 126
4.4.4 对重用已有设备模型及测试描述的支持 127
4.5 本章小结 127
第5章 智能终端应用软件系统测试技术 129
5.1 智能终端应用软件基础 129
5.1.1 Android操作系统 129
5.1.2 Android开发环境 131
5.1.3 Android应用程序组件 131
5.1.4 Android模拟器和ADB工具 132
5.1.5 Android UI 133
5.1.6 Android Log系统 134
5.1.7 Android应用代码覆盖 135
5.1.8 Android GUI测试框架 136
5.2 智能终端应用软件系统的测试生成技术 137
5.2.1 Android测试用例生成技术 137
5.2.2 基于GUI的测试用例生成通用框架 141
5.3 智能终端应用软件系统的回归测试技术 152
5.3.1 安全回归测试选择技术的相关研究 152
5.3.2 Android应用回归测试场景 153
5.3.3 控制流图构建算法 155
5.3.4 影响分析算法 166
5.3.5 安全选择算法 172
5.4 智能终端应用软件系统的压力测试技术 173
5.4.1 WiseMonkey占用资源的实现 173
5.4.2 压力测试代理程序的设计 173
5.4.3 占用内存进行压力测试 175
5.4.4 占用CPU进行压力测试 176
5.4.5 占用网络进行压力测试 178
5.5 本章小结 178
第6章 实时嵌入式软件系统测试环境构建技术 179
6.1 现有的实时嵌入式软件系统测试环境分析 179
6.2 虚拟机技术与实时嵌入式软件测试 181
6.3 实时嵌入式软件仿真测试虚拟机规范的设计 182
6.3.1 数据类型 183
6.3.2 内存管理 183
6.3.3 测试任务管理 184
6.3.4 指令系统 186
6.3.5 测试描述文件 187
6.4 基于RT-ESSTVMS的实时嵌入式软件仿真测试环境设计 187
6.4.1 RT-ESSTE体系结构设计 187
6.4.2 测试开发系统设计 188
6.4.3 测试执行系统设计 188
6.5 实时嵌入式软件测试描述执行引擎的设计与实现 191
6.5.1 RT-ESTDEE的总体设计 192
6.5.2 测试描述预处理过程 192
6.5.3 测试调度过程 202
6.5.4 测试描述执行过程 202
6.5.5 在线测试描述的执行 203
6.5.6 测试执行引擎效率分析 204
6.6 本章小结 206
第7章 实时嵌入式软件系统测试实例 207
7.1 被测系统简介 207
7.1.1 I/GNS概述 207
7.1.2 I/GNS的主要功能和性能 208
7.2 I/GNS静态建模 209
7.2.1 交联设备模型构建 209
7.2.2 静态模型的测试描述 209
7.3 I/GNS动态建模 211
7.3.1 基于UML状态图的动态建模 211
7.3.2 I/GNS的RT-EFSM模型及时间约束迁移等价类分析 214
7.4 测试序列、测试用例及测试描述生成 215
7.5 测试执行及结果分析 220
7.6 本章小结 222
附录1 数学符号索引 223
附录2 RT-ESTDL语义及用法 225
附录3 I/GNS软件接口数据定义 233
附录4 I/GNS软件(展平)测试场景树列表 235
参考文献 237
缩略词汇表
第1章 嵌入式系统及软件 1
1.1 嵌入式系统概述 1
1.1.1 嵌入式系统与实时系统 1
1.1.2 嵌入式系统的特点 5
1.1.3 嵌入式系统的组成 6
1.1.4 嵌入式系统的应用领域 10
1.2 嵌入式软件概述 12
1.2.1 嵌入式软件分类 12
1.2.2 嵌入式操作系统 14
1.3 本章小结 26
第2章 嵌入式软件工程与质量特性 27
2.1 嵌入式软件工程 27
2.1.1 嵌入式软件开发模型 28
2.1.2 系统分析与软件定义阶段 30
2.1.3 软件需求分析阶段 30
2.1.4 软件设计阶段 33
2.1.5 软件实现阶段 33
2.1.6 软件测试阶段 33
2.1.7 软件验收与交付阶段 36
2.1.8 软件使用与维护阶段 38
2.2 嵌入式软件工程化管理 40
2.2.1 软件工程化管理 40
2.2.2 软件开发方法学 41
2.3 嵌入式软件的质量特性 42
2.4 本章小结 43
第3章 基于形式化方法的嵌入式软件系统测试技术 45
3.1 软件形式化测试技术概述 45
3.1.1 软件形式化测试概述 45
3.1.2 基于形式规约语言 46
3.1.3 基于有限状态机和时间自动机模型 49
3.1.4 基于统一建模语言 50
3.1.5 基于Petri网模型 51
3.1.6 基于马尔可夫链模型 52
3.1.7 基于自定义形式化测试描述语言 52
3.2 嵌入式软件形式化测试技术 53
3.2.1 基本概念 53
3.2.2 基于FSM的软件测试技术 57
3.2.3 基于EFSM的软件测试技术 58
3.2.4 实时扩展有限状态机模型 61
3.3 基于实时扩展UML与RT-EFSM的测试用例生成 72
3.3.1 UML与OCL基本概念及技术 72
3.3.2 UML与软件测试 77
3.3.3 UML实时扩展 79
3.3.4 基于实时扩展UML与RT-EFSM的测试用例生成过程 91
3.4 本章小结 111
第4章 实时嵌入式软件自动化测试描述技术 113
4.1 测试描述的概念及分类 113
4.1.1 测试描述的概念 113
4.1.2 测试描述的分类 114
4.2 实时嵌入式软件测试描述的特性 115
4.2.1 实时嵌入式软件测试的特点 115
4.2.2 RT-ESTDL的设计原则 116
4.2.3 RT-ESTDL的地位和作用 117
4.3 实时嵌入式软件测试描述语言的设计 118
4.3.1 RT-ESTDL的词法 118
4.3.2 RT-ESTDL的语法 120
4.4 RT-ESTDL对实时嵌入式软件测试的支持机制 122
4.4.1 对实时嵌入式设备建模的支持 122
4.4.2 对实时嵌入式软件测试时间约束及并发处理的支持 126
4.4.3 对实时嵌入式设备模型实时通信的支持 126
4.4.4 对重用已有设备模型及测试描述的支持 127
4.5 本章小结 127
第5章 智能终端应用软件系统测试技术 129
5.1 智能终端应用软件基础 129
5.1.1 Android操作系统 129
5.1.2 Android开发环境 131
5.1.3 Android应用程序组件 131
5.1.4 Android模拟器和ADB工具 132
5.1.5 Android UI 133
5.1.6 Android Log系统 134
5.1.7 Android应用代码覆盖 135
5.1.8 Android GUI测试框架 136
5.2 智能终端应用软件系统的测试生成技术 137
5.2.1 Android测试用例生成技术 137
5.2.2 基于GUI的测试用例生成通用框架 141
5.3 智能终端应用软件系统的回归测试技术 152
5.3.1 安全回归测试选择技术的相关研究 152
5.3.2 Android应用回归测试场景 153
5.3.3 控制流图构建算法 155
5.3.4 影响分析算法 166
5.3.5 安全选择算法 172
5.4 智能终端应用软件系统的压力测试技术 173
5.4.1 WiseMonkey占用资源的实现 173
5.4.2 压力测试代理程序的设计 173
5.4.3 占用内存进行压力测试 175
5.4.4 占用CPU进行压力测试 176
5.4.5 占用网络进行压力测试 178
5.5 本章小结 178
第6章 实时嵌入式软件系统测试环境构建技术 179
6.1 现有的实时嵌入式软件系统测试环境分析 179
6.2 虚拟机技术与实时嵌入式软件测试 181
6.3 实时嵌入式软件仿真测试虚拟机规范的设计 182
6.3.1 数据类型 183
6.3.2 内存管理 183
6.3.3 测试任务管理 184
6.3.4 指令系统 186
6.3.5 测试描述文件 187
6.4 基于RT-ESSTVMS的实时嵌入式软件仿真测试环境设计 187
6.4.1 RT-ESSTE体系结构设计 187
6.4.2 测试开发系统设计 188
6.4.3 测试执行系统设计 188
6.5 实时嵌入式软件测试描述执行引擎的设计与实现 191
6.5.1 RT-ESTDEE的总体设计 192
6.5.2 测试描述预处理过程 192
6.5.3 测试调度过程 202
6.5.4 测试描述执行过程 202
6.5.5 在线测试描述的执行 203
6.5.6 测试执行引擎效率分析 204
6.6 本章小结 206
第7章 实时嵌入式软件系统测试实例 207
7.1 被测系统简介 207
7.1.1 I/GNS概述 207
7.1.2 I/GNS的主要功能和性能 208
7.2 I/GNS静态建模 209
7.2.1 交联设备模型构建 209
7.2.2 静态模型的测试描述 209
7.3 I/GNS动态建模 211
7.3.1 基于UML状态图的动态建模 211
7.3.2 I/GNS的RT-EFSM模型及时间约束迁移等价类分析 214
7.4 测试序列、测试用例及测试描述生成 215
7.5 测试执行及结果分析 220
7.6 本章小结 222
附录1 数学符号索引 223
附录2 RT-ESTDL语义及用法 225
附录3 I/GNS软件接口数据定义 233
附录4 I/GNS软件(展平)测试场景树列表 235
参考文献 237
猜您喜欢