第1章 嵌入式软件测试概述 1
1.1嵌入式软件及其特性 2
1.1.1嵌入式软件概述 2
1.1.2嵌入式软件设计方法 3
1.1.3嵌入式软件测试的意义和要求 8
1.2嵌入式软件测试基础 11
1.2.1嵌入式软件静态测试 12
1.2.2嵌入式软件动态测试 12
1.2.3嵌入式软件测试管理 13
习题与思考题 22
第2章 国内外嵌入式软件相关重要标准及规范介绍 23
2.1国外标准及规范 23
2.1.1嵌入式软件编码规范 23
2.1.2软件工程化标准 32
2.1.3软件安全认证标准 37
2.1.4软件测试标准 40
2.2国内标准及规范 42
2.2.1嵌入式软件质量度量 43
2.2.2嵌入式软件编码规范 46
2.2.3软件工程化标准及规范 51
2.2.4嵌入式软件测试指南 65
习题与思考题 69
第3章 嵌入式软件静态测试 70
3.1嵌入式软件质量度量 70
3.1.1嵌入式软件质量模型 71
3.1.2嵌入式软件质量模型的度量元 87
3.2嵌入式软件静态分析 95
3.2.1编码规则检查 95
3.2.2安全性检查 115
3.3嵌入式软件代码分析 119
3.3.1错误检测主要内容 120
3.3.2运行时错误检测 121
3.4软件代码审查 132
3.5静态测试工具实践 136
3.5.1软件静态测试工具 136
3.5.2代码分析工具 140
习题与思考题 146
第4章 嵌入式软件动态测试 147
4.1嵌入式软件测试技术 147
4.1.1嵌入式软件黑盒测试 147
4.1.2嵌入式软件白盒测试 151
4.2嵌入式软件测试级别 156
4.2.1单元测试 156
4.2.2集成测试 161
4.2.3配置项测试 175
4.2.4系统测试 178
4.3嵌入式软件动态测试工具 189
4.3.1白盒测试工具 189
4.3.2黑盒测试工具 208
习题与思考题 212
第5章 嵌入式软件测试过程 213
5.1嵌入式软件测试过程模型 213
5.1.1软件测试过程模型 213
5.1.2软件代码可靠性测试Z模型 219
5.2嵌入式软件测试过程管理工具SQATest-TM 222
5.2.1 SQATest-TM简介 222
5.2.2 SQATest-TM测试过程管理功能 224
习题与思考题 229
第6章 嵌入式软件测试自动化 230
6.1嵌入式软件测试自动化技术 230
6.1.1嵌入式软件测试自动化过程模型 230
6.1.2嵌入式软件自动化测试工作原理 232
6.2嵌入式软件自动化测试框架 233
6.2.1“黑盒”测试的自动化 234
6.2.2单元测试的自动化 237
6.3嵌入式软件自动化工具ETest 238
习题与思考题 245
第7章 嵌入式软件可靠性测试 246
7.1软件可靠性分析 251
7.1.1软件失效模式及影响分析 252
7.1.2软件故障树分析 257
7.2软件可靠性测试 260
7.2.1软件可靠性增长测试 262
7.2.2软件可靠性验证测试 263
7.2.3软件可靠性摸底测试 266
7.2.4软件可靠性测试用例设计方法 266
7.3软件可靠性评估 273
7.3.1软件可靠性评估参数 273
7.3.2软件可靠性模型 274
7.3.3操作剖面的构造 277
7.4军工软件可靠性工程 281
习题与思考题 283
第8章 嵌入式软件安全性测试 284
8.1嵌入式软件安全性分析 284
8.1.1嵌入式软件安全性需求 284
8.1.2嵌入式软件安全性定义 286
8.2嵌入式软件安全性测试要求 288
8.2.1嵌入式软件安全性过程 288
8.2.2嵌入式软件安全性测试类型 292
8.3嵌入式软件安全性测试技术及方法 294
8.3.1嵌入式软件安全性测试技术 294
8.3.2嵌入式软件安全性测试方法 300
8.4安全装备软件认证 303
8.4.1安全装备软件定义 303
8.4.2安全装备软件认证及方法 304
习题与思考题 308
第9章 嵌入式软件测试平台及环境 309
9.1全实物仿真测试 309
9.1.1全实物仿真测试概念 310
9.1.2全实物仿真测试应用 310
9.2全数字仿真测试 311
9.2.1全数字仿真测试技术及环境 311
9.2.2全数字仿真测试开发支持 312
9.3半实物仿真测试 314
9.3.1半实物仿真测试技术及环境 314
9.3.2半实物仿真开环测试 316
9.3.3半实物仿真闭环测试 317
9.3.4半实物仿真测试的技术发展 317
9.4仿真测试策略 318
9.4.1基于仿真环境的测试策略 318
9.4.2基于交叉调试的测试策略 321
9.5基于虚拟仪器的嵌入式软件测试 324
9.5.1虚拟仪器的概念 324
9.5.2虚拟仪器技术在测试中的应用 327
9.6基于虚拟样机的嵌入式系统仿真测试 332
9.6.1虚拟样机技术的概念 332
9.6.2虚拟样机及虚拟测试 333
9.7嵌入式仿真测试工具 335
9.7.1全数字仿真测试工具 335
9.7.2嵌入式应用仿真工具 342
习题与思考题 346
第10章 基于FPGA的嵌入式软件测试基础 347
10.1 FPGA介绍 347
10.1.1 FPGA原理 347
10.1.2 FPGA应用基础 348
10.1.3 FPGA系统开发过程 349
10.1.4 FPGA系统开发工具支持 353
10.2 FPGA设计规范要求 361
10.2.1语法设计要求 361
10.2.2通用设计要求 363
10.2.3跨时钟域设计要求 367
10.2.4常见设计缺陷 368
10.3 FPGA相关标准规范 370
10.3.1 Actel器件编码规范 371
10.3.2 Altera器件编码规范 374
习题与思考题 375
第11章 基于FPGA的嵌入式软件测试技术 376
11.1 FPGA测试流程及基本方法 376
11.2 FPGA静态测试 378
11.2.1 FPGA编码错误检测 379
11.2.2静态时序分析方法 379
11.2.3时序约束分析 381
11.2.4功耗分析测试 384
11.2.5逻辑资源分析测试 385
11.2.6静态测试工具介绍 385
11.3 FPGA仿真测试 396
11.3.1 FPGA仿真测试技术介绍 396
11.3.2 FPGA仿真测试验证方法 396
11.3.3测试激励及测试脚本要求 397
11.3.4仿真测试内容与测试工具 398
11.3.5仿真测试工作准备 401
11.3.6仿真测试工作步骤 401
11.3.7仿真测试工具使用流程 403
11.4 FPGA软件形式验证 407
11.4.1 FPGA软件形式验证介绍 407
11.4.2形式验证内容与验证工具 407
11.4.3形式验证测试条件与测试准备 408
11.4.4等价性检查工作步骤 410
11.4.5等价性检查工具使用流程 410
11.5 SOC系统验证 416
习题与思考题 417
参考文献 418