本書基于國際軟件測試認證委員會(InternationalSoftwareTestingQualificationsBoard,ISTQB)汽車軟件測試基礎(chǔ)的課程大綱編寫。書中闡述了汽車軟件測試所需的測試基礎(chǔ)知識,并探討了軟件測試人員如何參與汽車行業(yè)產(chǎn)品開發(fā)過程的活動,同時分析了與汽車行業(yè)相關(guān)的標準和規(guī)范(如ASPICE、ISO26262和AUTOSAR)的背景、結(jié)構(gòu)及其挑戰(zhàn),對測試人員所關(guān)注的測試目的、測試級別、測試技術(shù)和方法也進行了比較。此外,本書還介紹了汽車行業(yè)的不同虛擬測試環(huán)境,并比較了這些環(huán)境在汽車產(chǎn)品開發(fā)中的應用。本書還介紹了汽車行業(yè)中特殊的測試方法和技術(shù)。為便于讀者理解,作者以城市輕型車ULV項目為例,貫穿全書,指導讀者將理論應用于實際項目工作中。書中涉及的內(nèi)容廣泛,部分很有價值,超出本書主要章節(jié)的內(nèi)容在附錄中也進行了詳細闡述。本書可以作為汽車軟件測試和開發(fā)人員、汽車軟件質(zhì)量管理人員的參考書籍,也可以作為準備參加ISTQB汽車軟件測試認證(專業(yè)汽車軟件測試)的讀者的學習資料,還可以作為高等院校汽車、計算機及軟件和系統(tǒng)工程相關(guān)專業(yè)的教材。
本書基于國際軟件測試認證委員會汽車軟件測試基礎(chǔ)的課程大綱編寫,全面講解汽車軟件測試所需的基礎(chǔ)知識,理論與實踐相結(jié)合,幫助讀者更好地理解、學習。
前 言
汽車行業(yè)在不斷變化。盡管汽車及汽車部件的測試一直以來都是開發(fā)的一個重要組成部分,但是測試在今天比以往更加重要,因為汽車中軟件的規(guī)模在不斷增大。目前構(gòu)成汽車軟件的代碼已多達億行級。此外,經(jīng)驗表明,由于軟件的特殊性,它甚至比硬件和機械更容易出錯。
因此,隨著汽車系統(tǒng)中軟件占比的增加,預計汽車系統(tǒng)中的錯誤也會顯著增多。軟件測試人員必須在開發(fā)過程中能發(fā)現(xiàn)和攔截這些錯誤,以防止客戶在駕駛和操作汽車過程中因為這些錯誤而發(fā)生事故,甚至在極端情況下導致人員的傷亡。汽車行業(yè)中指導軟件測試的書籍很少,這本書的出版也為此做出了貢獻并填補了空白。
這本書的4位作者都是GTB汽車軟件測試工程師工作組的成員。該工作組的成員主要來自汽車制造商(如寶馬、戴姆勒)、汽車供應商(如大陸集團、馬夸特、舍弗勒、采埃孚)及其服務供應商(如工具制造商、顧問、培訓機構(gòu))。
自2014年以來,GTB汽車軟件測試工程師工作組一直在為ISTQB 的基礎(chǔ)級汽車軟件測試工程師(CTFL-AuT)開發(fā)課程大綱(最初只是德語版)。當前版本是2020年的2.0.2版[ISTQB 2020],此版本已經(jīng)完成并可使用。此課程大綱的1.0版本由Prozesswerk公司受GASQ(Global Association for Software Quality)委托于2011年編制。在此基礎(chǔ)上,GTB汽車軟件測試工程師工作組在2014年開始接手并延續(xù)了課程大綱的開發(fā)。
2018年英文版的課程大綱開發(fā)完成,開創(chuàng)了ISTQB 基礎(chǔ)級汽車軟件測試工程師(CTFL-AuT)在德國、奧地利和瑞士等國家之外的國際化之路。課程大綱的中文、日語和韓語翻譯如今已經(jīng)非常完善。與此同時,GTB汽車軟件測試工程師工作組在內(nèi)容上對課程大綱做了進一步開發(fā),將汽車行業(yè)所關(guān)注的一些新內(nèi)容與測試相結(jié)合,如SOTIF(預期功能安全)和IT信息安全。
該課程大綱于2017年進行了大量的修訂,為了配合新大綱,出版社dpunkt.verlag提議,在此基礎(chǔ)上編寫一本有關(guān)該課程大綱的基礎(chǔ)知識系列教科書,便于深化其內(nèi)容,并對ISTQB 認證考試的準備提供支持。就這樣,本書的4位作者自發(fā)地走到了一起,我們不僅想把課程大綱以圖書的形式呈現(xiàn)給讀者,還想以此深化課程大綱并可用于輔助教學。本書現(xiàn)在就在您手上了。
為了讓讀者能更好地閱讀本書,書中省略了(男/女)測試人員等對不同性別的角色描述,而只使用了男性測試人員形式,即測試人員(Tester)。當然,此角色描述適用于所有性別。
您可以在www.ctfl-aut.de網(wǎng)站上找到本書。在該網(wǎng)站上,也可以找到課程大綱、模擬考試題和其他有用的相關(guān)資料的鏈接。此外,您還可以在那里給出對本書的反饋意見。我們感謝審稿人馬蒂亞斯·弗里德里希、托爾斯滕·蓋塞爾哈特、托馬斯·哈格勒、米夏埃爾·海梅爾、丹尼斯·赫爾曼、彼得·拉布和托拜厄斯·施密德對本書不同章節(jié)草稿提供的寶貴反饋,以及安德里斯·斯皮勒對全書手稿提出的綜合意見。我們還要感謝本書的推薦人格爾德·鮑曼、托馬斯·孔沙克和霍斯特·波爾曼。此外,我們也感謝出版社dpunkt.verlag,特別是克里斯塔·普雷森丹茲,感謝他們對書籍手稿交付多次延遲的無限耐心。最后,但同樣重要的是,我們要感謝我們的家人,他們長期耐心地支持我們開展大規(guī)模的圖書出版工作。
祝愿我們的讀者在閱讀本書時能有很多快樂和頓悟的經(jīng)歷。
拉爾夫·邦加德、克勞迪亞·杜薩·齊格、
拉爾夫·賴辛、亞歷山大·舒爾茨
2020年7月分別于慕尼黑、拜爾斯多夫和科堡
目 錄
第1章 簡介 1
1.1 課程大綱 1
1.2 本書概述 2
1.3 示例項目介紹 3
1.3.1 示例項目背景 3
1.3.2 系統(tǒng)構(gòu)成 3
1.3.3 適用的標準 5
1.3.4 參與人員 6
第2章 基礎(chǔ)知識 7
2.1 測試原則 7
2.2 測試過程 10
2.2.1 測試執(zhí)行 10
2.2.2 測試準備 10
2.2.3 測試管理 12
2.3 系統(tǒng)生存周期中的測試 13
2.4 測試維度 15
2.4.1 測試級別 15
2.4.2 測試類型 18
2.4.3 測試技術(shù) 20
第3章 標準和規(guī)范 22
3.1 Automotive SPICE 23
3.1.1 構(gòu)造和結(jié)構(gòu) 24
3.1.2 測試要求 32
3.2 ISO 26262 39
3.2.1 E/E系統(tǒng)的功能安全 39
3.2.2 安全文化 40
3.2.3 安全生存周期中的測試人員 41
3.2.4 標準綱要 43
3.2.5 汽車安全完整性等級(ASIL)的分級劃定 45
3.2.6 測試方法的選擇 50
3.3 AUTOSAR 54
3.3.1 目標 55
3.3.2 開發(fā)方法 55
3.3.3 邏輯系統(tǒng)架構(gòu) 57
3.3.4 技術(shù)系統(tǒng)架構(gòu) 58
3.3.5 ECU軟件架構(gòu) 59
3.3.6 ECU軟件的生成 60
3.3.7 對測試的影響 60
3.4 各標準比較 64
3.4.1 目標 64
3.4.2 測試級別 64
3.4.3 測試技術(shù)和方法 67
第4章 虛擬測試環(huán)境 68
4.1 基礎(chǔ)知識 68
4.1.1 測試對象 70
4.1.2 測試框架 70
4.1.3 系統(tǒng)控制 72
4.2 測試環(huán)境類型 73
4.2.1 模型在環(huán)測試環(huán)境 74
4.2.2 軟件在環(huán)測試環(huán)境 77
4.2.3 硬件在環(huán)測試環(huán)境 80
4.3 測試環(huán)境的選擇和使用 82
第5章 測試方法和技術(shù) 90
5.1 測試方法 91
5.1.1 基于需求的測試 91
5.1.2 基于經(jīng)驗的測試 93
5.1.3 基于風險的測試 94
5.1.4 基于模型的測試 96
5.2 靜態(tài)測試技術(shù) 97
5.2.1 靜態(tài)分析技術(shù) 97
5.2.2 評審技術(shù) 99
5.2.3 MISRA C編程規(guī)范 103
5.3 動態(tài)測試技術(shù) 107
5.3.1 基于規(guī)格說明的測試技術(shù) 107
5.3.2 基于經(jīng)驗的測試技術(shù) 110
5.3.3 基于結(jié)構(gòu)的測試技術(shù) 110
5.3.4 測試執(zhí)行中的測試技術(shù) 118
5.4 比較和選擇 121
附錄A ISO 26262 127
A.1 各卷匯總 127
A.2 與測試相關(guān)的方法表概述 131
附錄B ASPICE 134
B.1 過程規(guī)格說明SWE.6 134
B.2 ASPICE過程和VDA范圍 134
B.3 通用實踐和通用資源 137
B.4 精細的NPLF量表 140
附錄C 測試級別的比較 141
附錄D 動力總成系統(tǒng)需求規(guī)格說明 142
D.1 巡航系統(tǒng)功能 142
D.2 組件規(guī)格說明 143
附錄E 本書內(nèi)容與課程大綱的對應 146
附錄F 縮寫表 148
附錄G 文獻目錄 151
G.1 更多文獻 151
G.2 引用 152