嵌入式軟件系統測試:基於形式化方法的自動化測試解決方案

殷永峰 薑博 編著

  • 出版商: 機械工業
  • 出版日期: 2021-01-01
  • 售價: $474
  • 貴賓價: 9.5$450
  • 語言: 簡體中文
  • 頁數: 250
  • 裝訂: 平裝
  • ISBN: 7111672429
  • ISBN-13: 9787111672425
  • 相關分類: 嵌入式系統
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

商品描述

本書總結了作者多年的嵌入式軟件系統測試的工程實踐經驗,基於形式化方法,提出了完整的自動化測試解決方案。全書從嵌入式系統的構成、分類和特點入手,介紹嵌入式軟件工程及管理方法,討論嵌入式軟件系統測試理論及測試環境構建等技術,並結合航電系統嵌入式軟件測試實例,為最終實現自動化測試提供有效的解決方案。
本書既適合從事軍用/民用領域嵌入式系統開發、驗證及維護的專業技術人員閱讀,也適合高等院校電腦、軟件工程等相關專業嵌入式系統方向的學生參考。

當前,嵌入式軟件在航空、航天、醫療、交通和現代武器裝備研製等關鍵領域得到廣泛應用。由於嵌入式軟件的重要性和特殊性,其質量和可靠性備受關註,而有效的嵌入式軟件系統測試正是保證軟件質量的重要手段。
本書首先介紹嵌入式軟件系統、嵌入式軟件工程以及質量和可靠性的基本概念,然後系統講解基於形式化方法的嵌入式軟件系統測試理論及技術,給出了基於實時擴展UML與RT-EFSM的測試用例生成過程。接著深入討論了實時嵌入式系統軟件的測試描述方法(涵蓋測試描述語言的設計及運行機制)和測試環境構建技術(涵蓋RT-ESSTVMS、RT-ESTDEE和測試執行引擎的設計)。此外,還介紹了基於Android的智能終端應用軟件系統測試,包括測試用例生成、回歸測試和壓力測試等內容。
本書特點
面向具備一定基礎的讀者,利用實用的方法和工具幫助研究人員和技術人員快速進階。
包含豐富的代碼示例,採用偽代碼形式幫助讀者理解關鍵算法。
以慣性/衛星組合導航系統軟件為測試實例,瞭解從模型構建、測試用例生成到測試執行和結果分析的全過程。

作者簡介

殷永峰 高工,博士。北京航空航天大学软件学院硕士生导师,航空工业软件可靠性管理与测评中心主任。担任中央网信办项目评审专家、多个军兵种软件技术专家、航空工业集团软件质量专家组成员。长期从事装备软件工程、软件可靠性与安全性、嵌入式软件验证以及网络安全技术等方面的研究及工程实践工作。已主持包括预研、技术基础、重点实验室基金、航空基金、航天科工基金等项目20余项,发表学术论文60余篇,获省部级一等奖、二等奖各2项、航空工业个人三等功1项,出版专著3本。主持完成多个型号的软件测评工作,获得机关和工业部门的

目錄大綱

前言
縮略詞匯表
第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