一、培訓(xùn)重點(diǎn)
針對培訓(xùn)課程內(nèi)容和特色做簡要介紹,系統(tǒng)講解敏捷測試過程中的儲(chǔ)備知識,熟練掌握敏捷測試過程各階段中所用到的技能點(diǎn)。
課程內(nèi)容包括:
敏捷測試的理解、敏捷測試的核心;
敏捷測試人員的必備素養(yǎng);敏捷策略的制定、敏捷測試的實(shí)施過程;
敏捷測試過程中開展自動(dòng)化測試的前提條件及約束條件;
敏捷測試自動(dòng)化測試的實(shí)施:單元、接口、UI;
敏捷測試與探索測試的深入探索;
持續(xù)集成在敏捷測試中的應(yīng)用;
如何高效的開展手工測試。
Devops下開展自動(dòng)化測試的前提條件及約束條件;
Devops接口測試的規(guī)范及接口測試實(shí)踐;
DevopsUI自動(dòng)化測試的規(guī)范及接口測試實(shí)踐;
自動(dòng)化測試框架的設(shè)計(jì)與實(shí)現(xiàn);
單元測試的方法TDD;
掌握Postman輕量化接口測試;
Python接口自動(dòng)化實(shí)踐(HTTP協(xié)議、Fiddler抓包、Request封裝、數(shù)據(jù)庫驅(qū)動(dòng)框架、Mock等);
接口測試框架設(shè)計(jì)與實(shí)現(xiàn);
接口測試的規(guī)范;
python與selenium很好的結(jié)合,讓學(xué)習(xí)者花最短的時(shí)間實(shí)現(xiàn)從功能工程師至自動(dòng)化測試工程師的蛻變。
二、培訓(xùn)特色
1.理論與實(shí)踐相結(jié)合、案例分析與行業(yè)應(yīng)用穿插進(jìn)行;
2.專家精彩內(nèi)容解析、學(xué)員專題討論、分組研究;
3.通過全面知識理解、專題技能和實(shí)踐結(jié)合的授課方式。
三、培訓(xùn)對象
軟件測試工程師、自動(dòng)化測試工程師等
四、課程收益
探索性測試、自動(dòng)化測試在敏捷測試中的應(yīng)用與開展
敏捷測試團(tuán)隊(duì)的組建與培養(yǎng)
五、日程安排
時(shí)間 | 主題 | 內(nèi)容描述 |
---|---|---|
第一天 | 敏捷測試的認(rèn)知&敏捷測試策略 |
1. 你我認(rèn)知的敏捷測試 敏捷開發(fā)的原則 敏捷測試下的,測試與開發(fā)的關(guān)系 協(xié)同協(xié)作 2. 敏捷測試的核心關(guān)鍵點(diǎn) 關(guān)注用戶體驗(yàn)、系統(tǒng)使用場景 測試盡早介入 Code review、單元測試、自動(dòng)化測試 持續(xù)集成、持續(xù)測試、隨時(shí)隨地測試 3. 敏捷測試人員的必要條件 依據(jù)風(fēng)險(xiǎn)確定需求優(yōu)先級 積極引入自動(dòng)化測試 增加探索性測試的使用 適應(yīng)從沖刺到?jīng)_刺的變化 4. 敏捷測試策略 確定被測對象測試范圍 確定測試技術(shù)(自動(dòng)化測試技術(shù))與質(zhì)量標(biāo)準(zhǔn) 明確項(xiàng)目的測試流程 確定了每一種測試技術(shù)的具體使用方式 注:包括待使用的框架和工具等 探索測試的深度和廣度;探索測試的重點(diǎn)和難點(diǎn) 統(tǒng)一項(xiàng)目內(nèi)使用的測試相關(guān)的術(shù)語 確定了質(zhì)量度量 5. 測試策略和測試計(jì)劃的差異 |
敏捷測試實(shí)施過程 |
1. 敏捷測試的實(shí)施過程 前期項(xiàng)目信息收集 確立質(zhì)量目標(biāo) 確定測試類型 確定測試工具和框架 確定測試階段 確定測試度量 6. 持續(xù)改進(jìn)和風(fēng)險(xiǎn)分析 |
|
敏捷測試過程下的人員要求與測試需求的提取 |
1. 測試人員的思維 用戶角度 工具輔助思維整理 7. 測試需求的分析 明確需求的范圍 業(yè)務(wù)處理過程 需求背后的隱式需求 8. 測試需求分析何時(shí)進(jìn)行? 9. 為什么要進(jìn)行測試需求分析? 直觀的需求(用例圖/活動(dòng)圖) 需求轉(zhuǎn)變 10. 如何開展測試需求分析? 了解和學(xué)習(xí)需求 11. 測試需求分析的成果物是什么? 明確測試范圍-------功能點(diǎn) 功能的處理過程----單功能點(diǎn) 12. 測試需求分析的成果物是什么? 明確測試范圍 13. 需求分析和測試需求分析的區(qū)別? 需求分析 測試需求分析 |
|
敏捷測試實(shí)施過程 |
1. 敏捷測試的實(shí)施過程 前期項(xiàng)目信息收集 確立質(zhì)量目標(biāo) 確定測試類型 確定測試工具和框架 確定測試階段 確定測試度量 持續(xù)改進(jìn)和風(fēng)險(xiǎn)分析 |
|
敏捷測試中如何高效的開展手工與自動(dòng)化 |
1. 敏捷團(tuán)隊(duì)中如何高效設(shè)計(jì)測試用例 如何精簡測試用例條數(shù):測試用例不是越多越好 等價(jià)類設(shè)計(jì)法 邊界值設(shè)計(jì)法 基本路徑分析法 場景設(shè)計(jì)法 因果圖設(shè)計(jì)法等 |
|
敏捷下的自動(dòng)化測試的實(shí)施 |
敏捷測試過程中如何構(gòu)建高質(zhì)量的自動(dòng)化測試 1. 自動(dòng)化測試的實(shí)施背景 2. 如何建立一個(gè)務(wù)實(shí)明確的自動(dòng)化測試目標(biāo) 問題1:如何估算分析自動(dòng)化測試效益 問題2:如何構(gòu)建高收益成本比自動(dòng)化測試目標(biāo) 敏捷測試下的自動(dòng)化測試規(guī)范 3. 敏捷測試下自動(dòng)化測試的引入要求 自動(dòng)化測試準(zhǔn)入條件 自動(dòng)化測試適用場景 4. 敏捷測試下自動(dòng)化測試范圍 分層測試:單元、接口、UI 5. 自動(dòng)化測試開展時(shí)機(jī) 6. 自動(dòng)化測試規(guī)范 工具規(guī)范 單元測試規(guī)范 接口自動(dòng)化測試規(guī)范 UI自動(dòng)化測試規(guī)范 7. 自動(dòng)化測試流程 8. 項(xiàng)目團(tuán)隊(duì) 9. 風(fēng)險(xiǎn)評估 敏捷測試下的自動(dòng)化測試開展 1. 確定自動(dòng)化測試類型 10. 明確自動(dòng)化測試活動(dòng) 11. 敏捷測試過程中測試工作的開展 單元測試框架:采用TDD,覆蓋率檢查,QA review UT,每次構(gòu)建在CI執(zhí)行 測試數(shù)據(jù)工具: faker等 集成測試框架 集成測試工具:Swagger、Jmeter等 UI功能測試框架:selenium、UFT 性能測試:壓力測試,負(fù)載測試 安全測試:滲透測試 12. 代碼單元測試方案 基于TDD的單元測試框架編寫單元測試代碼 使用Mock模擬外部依賴測試 單元測試用例的實(shí)戰(zhàn) 13. 接口自動(dòng)化測試方案 輕量化接口測試 接口自動(dòng)化測試框架 14. UI自動(dòng)化測試方案 UI自動(dòng)化測試 自動(dòng)化測試框架 |
|
敏捷策劃中探索性測試的應(yīng)用: 探索性測試策略的引入 |
1. 軟件測試需求分析與管理 需求分析與需求評審 1. 軟件測試策略方案認(rèn)知與設(shè)計(jì) 2. 常規(guī)測試策略:有點(diǎn)至面、流程式 3. 結(jié)構(gòu)化測試流程 探索性測試的基本過程 |
|
第二天 |
敏捷策劃中探索性測試的應(yīng)用: 探索性測試策略的系統(tǒng)認(rèn)知 |
2. 探索性測試的核心 3. 探索性測試的目標(biāo) 4. 探索性測試的優(yōu)點(diǎn) 5. 自由式探索式測試 6. 基于場景的探索式測試 7. 基于策略的探索式測試 基于反饋的探索式測試 |
DevOps中如何高效的開展手工與自動(dòng)化 |
DevOps自動(dòng)化測試的開展 1. DevOps自動(dòng)化測試的認(rèn)知 2. DevOps下自動(dòng)化測試的引入要求 自動(dòng)化測試準(zhǔn)入條件 自動(dòng)化測試適用場景 3. DevOps下自動(dòng)化測試范圍 分層測試:單元、接口、UI 4. 自動(dòng)化測試開展時(shí)機(jī) 5. 自動(dòng)化測試規(guī)范 工具規(guī)范 單元測試規(guī)范 接口自動(dòng)化測試規(guī)范 UI自動(dòng)化測試規(guī)范 6. 自動(dòng)化測試流程 7. 項(xiàng)目團(tuán)隊(duì) 8. 風(fēng)險(xiǎn)評估 |
|
第三天 | 單元測試方法TDD |
一、TDD編程單元?jiǎng)澐侄x 1. 從“用戶故事”到“程序文件”劃分定義 2. 程序文件分類組織到層次化文件夾 3. 從“程序文件”到“數(shù)據(jù)與函數(shù)”劃分定義 4. 接口層次、函數(shù)單元粒度與訪問范圍大小 5. 動(dòng)手實(shí)踐:代碼單元?jiǎng)澐侄x實(shí)踐 二、TDD編程單元的測試 1. 基于編程單元代碼實(shí)現(xiàn)的測試用例與測試覆蓋率 2. 基于編程單元聲明定義的測試用例與測試覆蓋率 3. 好的單元測試必須遵守AIR原則 4. 編寫單元測試代碼遵守BCDE原則 5. 編程單元的業(yè)務(wù)依賴與技術(shù)依賴 6. 基于單元黑盒的測試腳本標(biāo)準(zhǔn)編寫 7. 全面完整取值與代碼路徑覆蓋 8. 依據(jù)單元測試腳本編寫實(shí)現(xiàn)代碼的過程 9. 執(zhí)行單元測試腳本檢查實(shí)現(xiàn)代碼是否滿足標(biāo)準(zhǔn) 10. 實(shí)現(xiàn)代碼重構(gòu)時(shí)必須先修改測試腳本 11. 單元測試方法之邏輯驅(qū)動(dòng)測試方法 12. 動(dòng)手實(shí)踐:單元測試框架案例實(shí)戰(zhàn) 三、Mock那些事 1. Mock的作用 2. 揭示mock:mock的對象、mock的目的 3. mock在測試中的應(yīng)用 4. mock的注意事項(xiàng) 5. 動(dòng)手實(shí)踐:Mock動(dòng)手實(shí)踐 四、TDD與Mock的深度實(shí)踐 1. 復(fù)雜問題的TDD開發(fā)模式 2. 分而治之的思維:更小單元粒度TDD 3. 單元獨(dú)立測試與組合單元測試 4. mock與patch 5. mock斷言的作用與實(shí)踐 6. mock斷言與單元測試框架斷言的結(jié)合:Assert_*_with等 7. mock統(tǒng)計(jì) 8. 動(dòng)手實(shí)踐:單元測試與mock 的深度案例實(shí)踐 |
DevOps接口自動(dòng)化測試規(guī)范 |
接口測試如何開展?如何規(guī)范化 1. 接口測試 內(nèi)容 目的 2. 接口測試規(guī)范 接口測試的原則 接口測試的規(guī)則 接口文檔的規(guī)范 3. 接口測試用例 測試用例編寫規(guī)則 測試用例設(shè)計(jì)思路 測試用例設(shè)計(jì)方法 4. 測試工具 接口測試流程 接口測試質(zhì)量評估標(biāo)準(zhǔn) 測試用例設(shè)計(jì)思考點(diǎn) |
|
Postman實(shí)操 |
Postman全面了解 1. get請求 2. post請求 3. 斷言 Postman實(shí)操 1. Get請求:百度搜索案例 2. Get請求案例:微信接口 3. Post請求案例:微信群發(fā)消息 4. Post請求案例:微信From表單 5. Post請求案例:公眾號菜單維護(hù) 6. 局部環(huán)境變量 7. 全局變量 8. 參數(shù)傳值 |
|
Jmeter接口測試 |
1. 開源的力量—Jmeter 解析引入和使用Jmeter的原因 對比多種工具,闡述性能測試工具選型原則 闡述Jmeter的優(yōu)勢和劣勢 2. Jmeter重要組件 Jmeter中的屬性和變量 Jmeter中的采樣器 Jmeter中的前置處理器和后置處理器 通過實(shí)例演示Jmeter組件作用域 3. Jmeter案例 Get請求:百度搜索案例 Get請求案例:微信接口 多接口間參數(shù)的傳遞 |
|
第四天 | 接口自動(dòng)化實(shí)踐 |
1. Fiddler抓包 Fiddler界面介紹 Fiddler抓包 斷點(diǎn) 重定向 過濾等 2. Requests庫 Request講解 Request案例 3. Unittest 4. Base函數(shù)與Request類封裝 Base函數(shù)封裝 Request類 5. 數(shù)據(jù)驅(qū)動(dòng)操作 Excel操作 數(shù)據(jù)框架講解 6. 數(shù)據(jù)庫操作 7. Mock Mock簡介與構(gòu)造器 Mock創(chuàng)建 Mock的統(tǒng)計(jì)方法 Mock對象管理 持續(xù)集成 |
接口自動(dòng)化框架 |
8. 接口自動(dòng)化框架 接口測試自動(dòng)化框架的認(rèn)知 測試是自動(dòng)化框架的工作流程 測試框架的規(guī)劃設(shè)計(jì) 框架的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn):公共配置模塊的設(shè)置 框架的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn):通用模塊的實(shí)現(xiàn) 實(shí)戰(zhàn):接口自動(dòng)化測試框架的設(shè)計(jì) 9. 手把手實(shí)現(xiàn)接口自動(dòng)化框架 通用模塊那些事兒(DB、Http、Email、Log等)? requests模塊再回顧 xml的維護(hù)與操作 excel的操作(讀、寫) 數(shù)據(jù)庫的操作 實(shí)戰(zhàn):接口自動(dòng)化測試框架的實(shí)現(xiàn) 10. 一步一踐接口自動(dòng)化框架 測試用例的設(shè)計(jì)與組織 測試報(bào)告的維護(hù) 測試用例的運(yùn)行 測試結(jié)果的分析 實(shí)踐:接口自動(dòng)化測試框架的運(yùn)行 |
|
DevOpsUI自動(dòng)化測試規(guī)范 |
DevOps自動(dòng)化測試的開展 1. DevOps自動(dòng)化測試的認(rèn)知 2. DevOps下自動(dòng)化測試的引入要求 自動(dòng)化測試準(zhǔn)入條件 自動(dòng)化測試適用場景 3. DevOps下自動(dòng)化測試范圍 分層測試:單元、接口、UI 4. 自動(dòng)化測試開展時(shí)機(jī) 5. 自動(dòng)化測試規(guī)范 工具規(guī)范 單元測試規(guī)范 接口自動(dòng)化測試規(guī)范 UI自動(dòng)化測試規(guī)范 6. 自動(dòng)化測試流程 7. 項(xiàng)目團(tuán)隊(duì) 8. 風(fēng)險(xiǎn)評估 |
|
WebDriver Api、POM設(shè)計(jì)模式 |
Python基礎(chǔ) 自動(dòng)化測試基礎(chǔ) 1. 自動(dòng)化簡介 2. 分層的自動(dòng)化測試 3. 什么樣的項(xiàng)目適合自動(dòng)化測試 4. 自動(dòng)化工具對比 5. selenium 介紹 6. 成就大神之路 7. 前端工具介紹 Python自動(dòng)化環(huán)境的部署 WebDriver API 1. 從定位元素開始 2. 控制瀏覽器 3. 簡單元素操作 4. 鼠標(biāo)事件 5. 鍵盤事件 6. 獲得驗(yàn)證信息 7. 設(shè)置元素等待 8. 模塊驅(qū)動(dòng)測試 9. 關(guān)鍵字驅(qū)動(dòng)測試 10. 數(shù)據(jù)驅(qū)動(dòng)測試 11. 模塊化測試模型實(shí)例 12. 數(shù)據(jù)驅(qū)動(dòng)測試實(shí)例(txt、xml文件等) 單元測試框架(可選pytest) 1. 單元測試框架的認(rèn)知 2. Unittest工作原理 3. 單元測試用例的組織 4. 構(gòu)建測試固件 5. 組織多個(gè)測試用例 6. 構(gòu)建測試套件 7. 測試套件的優(yōu)化 8. 多個(gè)測試類的控制 9. 單元測試執(zhí)行的控制 10. 測試用例的跳過 |
|
測試結(jié)果的美化、POM的設(shè)計(jì)、測試報(bào)告的發(fā)送 |
如何生成【漂亮的】測試結(jié)果 測試設(shè)計(jì)的升華—PO設(shè)計(jì)模式 1. 為什么使用page object(PO)設(shè)計(jì)模式 2. PageObject案例實(shí)操:基本測試用例 3. 基礎(chǔ)場景設(shè)計(jì) 4. 場景的優(yōu)化 5. 測試用例的組織 通過郵件發(fā)送測試報(bào)告 案例實(shí)戰(zhàn): 1. 測試案例設(shè)計(jì) 2. 以郵件的形式發(fā)送html格式的測試報(bào)告 3. 給單人發(fā)送郵件 4. 給多人發(fā)送郵件 5. 發(fā)送『漂亮的』HTML格式的郵件 |
|
自動(dòng)化框架的設(shè)計(jì)與實(shí)現(xiàn) |
自動(dòng)化框架的設(shè)計(jì)與實(shí)現(xiàn) 6. 配置文件 7. 數(shù)據(jù)驅(qū)動(dòng) 8. 日志管理 9. 自動(dòng)化框架的架構(gòu)設(shè)計(jì) 10. 框架的實(shí)現(xiàn)之公共文件庫:配置文件的操作 11. 框架的實(shí)現(xiàn)之公共文件庫:外部文件的操作 12. 框架的實(shí)現(xiàn)之公共文件庫:測試用例信息的管理 13. 框架的實(shí)現(xiàn)之公共文件庫:郵件的配置 14. 測試用例(頁面)的設(shè)計(jì)與實(shí)現(xiàn) 自動(dòng)化測試模型 1. 自動(dòng)化測試模型概覽 2. 模塊化驅(qū)動(dòng)測試實(shí)例 3. 數(shù)據(jù)驅(qū)動(dòng)測試實(shí)例 |
|
敏捷測試過程中CI的應(yīng)用 |
4. 持續(xù)集成 軟件交付痛點(diǎn) 持續(xù)集成概述 持續(xù)集成迫切需求 持續(xù)集成的作用、過程和優(yōu)勢 CI工具 應(yīng)用腳本自動(dòng)化構(gòu)建 持續(xù)測試 持續(xù)代碼質(zhì)量 持續(xù)部署;持續(xù)改進(jìn) 5. 敏捷開發(fā)& 持續(xù)交付 什么是持續(xù)交付;持續(xù)交付的研發(fā)流程 高質(zhì)量的單元測試提高開發(fā)期質(zhì)量的反饋 應(yīng)用CI進(jìn)行每日構(gòu)建以頻繁地交付可工作的軟件 基本腳本的自動(dòng)化部署縮短系統(tǒng)部署時(shí)間 6. 持續(xù)集成工具(CI) 持續(xù)集成工具(CI)環(huán)境部署 持續(xù)集成工具過程:創(chuàng)建任務(wù)、運(yùn)行構(gòu)建、定時(shí)執(zhí)行、自動(dòng)化構(gòu)建 |
六、授課專家
李老師 計(jì)算機(jī)碩士 熟練使用QTP與LoadRunner、Selenium、Jemeter自動(dòng)化測試工具,熟練掌握Vbs、shell、腳本語言,熟悉主流測試技術(shù);熟悉QC、TD等測試管理工具;擁有豐富的測試項(xiàng)目管理經(jīng)驗(yàn);熟練搭建部署Linux、win2008主流服務(wù)器;熟悉oracle數(shù)據(jù)庫部署與維護(hù),熟練使用PL/SQL語言;熟練部署MOSS門戶網(wǎng)站,熟悉規(guī)劃設(shè)計(jì)MOSS門戶網(wǎng)站工作流。精通課程:《測試基礎(chǔ)》、《測試流程優(yōu)化》、《loadrunner》、《敏捷測試》、《測試管理》、《測試技術(shù)》、《QuickTest professional》、《ALM&QC》、《自動(dòng)化測試工具selenium》、《Testlink與缺陷管理平臺(tái)整合》、《測試管理》。
程老師 中國科學(xué)院軟件研究所碩士,主要研究方向:架構(gòu)設(shè)計(jì)、項(xiàng)目管理實(shí)踐、大型高可用高并發(fā)架構(gòu)設(shè)計(jì)、微服務(wù)架構(gòu)、軟件測試等等。熟悉網(wǎng)絡(luò)分布式計(jì)算、數(shù)據(jù)庫、網(wǎng)絡(luò)操作系統(tǒng),精通J2EE、SQL、中間件服務(wù)器。在J2EE技術(shù)領(lǐng)域具有理論功底和實(shí)踐經(jīng)驗(yàn)。在J2ME商務(wù)應(yīng)用和基于J2ME游戲開發(fā)領(lǐng)域具有深厚的理論功底和豐富的實(shí)戰(zhàn)經(jīng)驗(yàn)。主要授課方向:DevOps落地實(shí)踐、微服務(wù)架構(gòu)、軟件構(gòu)架設(shè)計(jì)、UML、GO語言、OOAD、J2EE企業(yè)級高級應(yīng)用開發(fā)等。 擅長架構(gòu)企業(yè)級應(yīng)用;有獨(dú)立工作流引擎開發(fā)、企業(yè)系統(tǒng)應(yīng)用集成方面的豐富經(jīng)驗(yàn);在企業(yè)門戶(Portal)、報(bào)表、工作流引擎和企業(yè)服務(wù)總線(ESB)等應(yīng)用領(lǐng)域有深入的理論研究和充分的實(shí)踐;對軟件開發(fā)的整個(gè)流程有深刻認(rèn)識,有很好的協(xié)作精神和學(xué)習(xí)能力。在架構(gòu)下的系統(tǒng)設(shè)計(jì)和開發(fā)方面均有豐富經(jīng)驗(yàn)。能夠結(jié)合實(shí)際,在復(fù)雜的應(yīng)用環(huán)境中選擇適合的技術(shù)組合并合理利用開源中間件來降低項(xiàng)目開發(fā)風(fēng)險(xiǎn)、縮短開發(fā)周期、提高應(yīng)用系統(tǒng)的可維護(hù)性和可擴(kuò)展性。