測試經理
其他
自動化測試
測試用例
可靠性測試
金融
Linux
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

構建卓越的可靠性測試技術保障體系——復雜軟件的可靠性測試技術與實踐

前華為 主任工程師/測試部部長

超過 20 年的產品質量保障及測試團隊和項目管理經驗,主導OS全量測試質量防護網架構規(guī)劃,建立商用級OS持續(xù)集成系統(tǒng);落地基于代碼變更的智能測試,實現(xiàn)版本快速精準驗證;引進啟發(fā)式隨機、符號執(zhí)行程序行為分析、大數(shù)據及AI輔助智能化測試等技術,提高云OS的健壯性和安全性;熟悉華為IPD研發(fā)流程,主導開源項目測試質量保障流程和方法完善,持續(xù)參與華為軟件測試任職標準刷新。

目前專注于開源項目的可信質量保障、智能化軟件測試技術、復雜軟件可靠性測試等技術探索。個人擅長產品研發(fā)過程中的團隊建設、梯隊培養(yǎng)、質量保障、測試策略、測試設計、測試度量等,曾主導華為杭州研究所測試系統(tǒng)工程師訓練營項目,負責核心課程的開發(fā)和授課,獲十佳講師稱號,也是華為大學課程認證講師,有豐富的培訓授課經驗。

超過 20 年的產品質量保障及測試團隊和項目管理經驗,主導OS全量測試質量防護網架構規(guī)劃,建立商用級OS持續(xù)集成系統(tǒng);落地基于代碼變更的智能測試,實現(xiàn)版本快速精準驗證;引進啟發(fā)式隨機、符號執(zhí)行程序行為分析、大數(shù)據及AI輔助智能化測試等技術,提高云OS的健壯性和安全性;熟悉華為IPD研發(fā)流程,主導開源項目測試質量保障流程和方法完善,持續(xù)參與華為軟件測試任職標準刷新。 目前專注于開源項目的可信質量保障、智能化軟件測試技術、復雜軟件可靠性測試等技術探索。個人擅長產品研發(fā)過程中的團隊建設、梯隊培養(yǎng)、質量保障、測試策略、測試設計、測試度量等,曾主導華為杭州研究所測試系統(tǒng)工程師訓練營項目,負責核心課程的開發(fā)和授課,獲十佳講師稱號,也是華為大學課程認證講師,有豐富的培訓授課經驗。

課程費用

6800.00 /人

課程時長

2

成為教練

課程簡介

Software Defines Everything!Software Runs The World!人們正在構建超出自身管理能力的復雜智能化系統(tǒng)。通信、航空航天、金融、醫(yī)療等行業(yè)軟件對可靠性本身要求就很高,伴隨著智能化產品的難解釋性、不確定性給可靠性測試設計帶來更大挑戰(zhàn)。智能軟件正代替人類進行各種重大決策,系統(tǒng)的可靠性要求越來越高。如何驗證復雜軟件的可靠性設計?如何通過可靠性測試來驅動開發(fā)完善可靠性設計?本課程通過總結以OS(Linux/Android/AI車載系統(tǒng)/編譯器等)為代表的復雜軟件可靠性測試技術及優(yōu)秀實踐,形成體系化的課程。從傳統(tǒng)的基于故障模型的可靠性測試技術開始,再深入到軟件ABC化(AI/Big Data/Cloud Computing)后可靠性測試面臨的挑戰(zhàn)和智能化應對技術,涉及可靠性測試技術如啟發(fā)式FUZZING、混沌工程、基于搜索的測試、形式化驗證符號執(zhí)行、AI輔助的測試用例自動生成、AI-based系統(tǒng)的自動化測試生成等相關論文10余篇,通過大量產學研合作的成功實踐案例來引導學員理解和掌握先進的、系統(tǒng)化的可靠性測試方法。

目標收益

通過大量產學研合作的成功實踐案例來引導學員理解和掌握先進的、系統(tǒng)化的可靠性測試方法。

培訓對象

測試工程師、測試架構師、可靠性專項測試工程師等。

課程大綱

系統(tǒng)可靠性(DFR)基礎 1.軟件產品的質量標準
2.產品質量模型中的可靠性定義
3.廣義可靠性和狹義可靠性
4.軟件缺陷的相關定義和類型
5.復雜系統(tǒng)的可靠性需要體系化的測試來保障
6.系統(tǒng)可靠性的度量指標
7.狹義可靠性和可用性的關系(可靠性不高但可用性高?)
8.系統(tǒng)可靠性的度量方法和階段
9.軟件可靠性的避錯設計(分解抽象和重用)
10.軟件可靠性的避錯設計(模塊化)
11.軟件可靠性的避錯設計(模塊耦合及復雜度控制)
12.軟件可靠性的檢錯設計(主動和被動式)
13.軟件可靠性的容錯設計(局部容錯和完全容錯)
14.軟件可靠性的糾錯設計(糾錯時機和方法)
15.IPD流程中可靠性測試軟件工程(可靠性增長和確認的端到端測試)
16.案例:復雜系統(tǒng)的可靠性架構
17.案例:某類型軟件可靠性測試方法和評估
18.案例:產品開發(fā)過程中的可靠性快速度量
復雜系統(tǒng)可靠性測試挑戰(zhàn) 1.Software Defines Everything!Software Runs The World!
2.人們正在構建超出自身管理能力的系統(tǒng)
3.智能化產品大量使用復雜/龐大的開源軟件
4.集成第三方/開源項目的測試設計過程被壓縮
5.云/ABC的不確定性(難解釋性)影響測試分析
6.ABC智能化系統(tǒng)/產品/解決方案的測試設計越來越難
7.人工測試設計存在嚴重的殺蟲劑悖論
8.可靠性測試的三層防護網
9.智能化測試需同時解決輸入域探索和輸出預期判斷(test oracle)的問題
10.輸入域測試數(shù)據自動生成常用技術
11.輸出結果的自動比較技術分類和選擇
12.快速智能化的可靠性測試用例擴展技術和方法
可靠性測試防護網第一層:精準的人工設計 1.可靠性測試的正向和逆向設計
2.架構的正向測試:復雜系統(tǒng)可靠性架構設計評審關注點(韌性/彈性/業(yè)務連續(xù)/可持續(xù)運維)
3.可靠性軟件缺陷的模式和影響及根因
4.故障模型和影響分析FMEA
5.軟件的故障模式分析(SWFMEA)
6.故障模式分析之故障模式庫和ECA要素
7.案例演練:業(yè)務鏈路得可靠性FMEA分析
8.故障注入測試的輸入輸出因子提?。ü收嫌|發(fā))
9.故障注入測試的輸入因子選擇及去重合并
10.故障注入測試的結果檢測——基于業(yè)務特征做oracle判斷
11.故障注入測試的結果檢測——基于系統(tǒng)特征做oracle判斷
12.基于硬件和基于軟件故障注入測試技術對比
13.硬件及驅動故障注入測試
14.軟件系統(tǒng)故障注入測試
可靠性測試防護網第二層:隨機和混沌工程測試 1.人工設計可靠性測試的不足(殺蟲劑悖論,人的腦力相比復雜被測系統(tǒng)的局限性)
2.隨機自動化測試——FUZZING
3.隨機的混沌工程實驗/探索測試
4.混沌工程原則
5.混沌工程和傳統(tǒng)測試對比
6.Netflix創(chuàng)始的混沌工程實踐
7.混沌工程關鍵技術
8.混沌工程技術發(fā)展趨勢
9.案例:實踐1——最大化注入事件的真實性
10.案例:實踐2——安全混沌工程CloudStrike
11.案例:實踐3——區(qū)塊鏈共識算法上應用混沌工程
12.混沌工程常用工具框架
13.混沌工程通用架構抽象
可靠性測試防護網第三層:智能化的“全”覆蓋探索測試 1.普通隨機測試的盲目性會導致探索深度不夠
2.“智能”的啟發(fā)式隨機可靠性測試
3.測試設計自動化——測試自動生成技術的分類
4.程序行為分析“全路徑”的測試自動生成技術
5.“全”路徑覆蓋的智能化測試生成——符號執(zhí)行測試
6.測試設計自動化——AI輔助的測試全自動生成
7.測試設計自動化——等效蛻變測試全自動生成
智能的基于搜索的可靠性測試(SBST技術) 1.軟件工程問題的共性和本質
2.解決軟工問題的搜索優(yōu)化技術
3.SBST測試自動生成——爬山算法
4.SBST測試自動生成——GA算法
5.SBST技術演進趨勢
6.案例:業(yè)界實踐——Android應用自動探索測試 Sapienz
7.案例:業(yè)界實踐——崩潰復現(xiàn)用例自動搜索框架 BOTSING
AI-based系統(tǒng)的可靠性測試 1.AI系統(tǒng)測試需解決的問題和挑戰(zhàn)——難解釋性、不確定性(test oracle未知)
2.AI系統(tǒng)的測試過程
3.AI系統(tǒng)用例擴展的主要方法
4.AI系統(tǒng)的可靠性測試——充分性度量
5.案例:AI汽車可靠性智能化測試生成技術
系統(tǒng)可靠性(DFR)基礎
1.軟件產品的質量標準
2.產品質量模型中的可靠性定義
3.廣義可靠性和狹義可靠性
4.軟件缺陷的相關定義和類型
5.復雜系統(tǒng)的可靠性需要體系化的測試來保障
6.系統(tǒng)可靠性的度量指標
7.狹義可靠性和可用性的關系(可靠性不高但可用性高?)
8.系統(tǒng)可靠性的度量方法和階段
9.軟件可靠性的避錯設計(分解抽象和重用)
10.軟件可靠性的避錯設計(模塊化)
11.軟件可靠性的避錯設計(模塊耦合及復雜度控制)
12.軟件可靠性的檢錯設計(主動和被動式)
13.軟件可靠性的容錯設計(局部容錯和完全容錯)
14.軟件可靠性的糾錯設計(糾錯時機和方法)
15.IPD流程中可靠性測試軟件工程(可靠性增長和確認的端到端測試)
16.案例:復雜系統(tǒng)的可靠性架構
17.案例:某類型軟件可靠性測試方法和評估
18.案例:產品開發(fā)過程中的可靠性快速度量
復雜系統(tǒng)可靠性測試挑戰(zhàn)
1.Software Defines Everything!Software Runs The World!
2.人們正在構建超出自身管理能力的系統(tǒng)
3.智能化產品大量使用復雜/龐大的開源軟件
4.集成第三方/開源項目的測試設計過程被壓縮
5.云/ABC的不確定性(難解釋性)影響測試分析
6.ABC智能化系統(tǒng)/產品/解決方案的測試設計越來越難
7.人工測試設計存在嚴重的殺蟲劑悖論
8.可靠性測試的三層防護網
9.智能化測試需同時解決輸入域探索和輸出預期判斷(test oracle)的問題
10.輸入域測試數(shù)據自動生成常用技術
11.輸出結果的自動比較技術分類和選擇
12.快速智能化的可靠性測試用例擴展技術和方法
可靠性測試防護網第一層:精準的人工設計
1.可靠性測試的正向和逆向設計
2.架構的正向測試:復雜系統(tǒng)可靠性架構設計評審關注點(韌性/彈性/業(yè)務連續(xù)/可持續(xù)運維)
3.可靠性軟件缺陷的模式和影響及根因
4.故障模型和影響分析FMEA
5.軟件的故障模式分析(SWFMEA)
6.故障模式分析之故障模式庫和ECA要素
7.案例演練:業(yè)務鏈路得可靠性FMEA分析
8.故障注入測試的輸入輸出因子提取(故障觸發(fā))
9.故障注入測試的輸入因子選擇及去重合并
10.故障注入測試的結果檢測——基于業(yè)務特征做oracle判斷
11.故障注入測試的結果檢測——基于系統(tǒng)特征做oracle判斷
12.基于硬件和基于軟件故障注入測試技術對比
13.硬件及驅動故障注入測試
14.軟件系統(tǒng)故障注入測試
可靠性測試防護網第二層:隨機和混沌工程測試
1.人工設計可靠性測試的不足(殺蟲劑悖論,人的腦力相比復雜被測系統(tǒng)的局限性)
2.隨機自動化測試——FUZZING
3.隨機的混沌工程實驗/探索測試
4.混沌工程原則
5.混沌工程和傳統(tǒng)測試對比
6.Netflix創(chuàng)始的混沌工程實踐
7.混沌工程關鍵技術
8.混沌工程技術發(fā)展趨勢
9.案例:實踐1——最大化注入事件的真實性
10.案例:實踐2——安全混沌工程CloudStrike
11.案例:實踐3——區(qū)塊鏈共識算法上應用混沌工程
12.混沌工程常用工具框架
13.混沌工程通用架構抽象
可靠性測試防護網第三層:智能化的“全”覆蓋探索測試
1.普通隨機測試的盲目性會導致探索深度不夠
2.“智能”的啟發(fā)式隨機可靠性測試
3.測試設計自動化——測試自動生成技術的分類
4.程序行為分析“全路徑”的測試自動生成技術
5.“全”路徑覆蓋的智能化測試生成——符號執(zhí)行測試
6.測試設計自動化——AI輔助的測試全自動生成
7.測試設計自動化——等效蛻變測試全自動生成
智能的基于搜索的可靠性測試(SBST技術)
1.軟件工程問題的共性和本質
2.解決軟工問題的搜索優(yōu)化技術
3.SBST測試自動生成——爬山算法
4.SBST測試自動生成——GA算法
5.SBST技術演進趨勢
6.案例:業(yè)界實踐——Android應用自動探索測試 Sapienz
7.案例:業(yè)界實踐——崩潰復現(xiàn)用例自動搜索框架 BOTSING
AI-based系統(tǒng)的可靠性測試
1.AI系統(tǒng)測試需解決的問題和挑戰(zhàn)——難解釋性、不確定性(test oracle未知)
2.AI系統(tǒng)的測試過程
3.AI系統(tǒng)用例擴展的主要方法
4.AI系統(tǒng)的可靠性測試——充分性度量
5.案例:AI汽車可靠性智能化測試生成技術

活動詳情

提交需求