教學優勢
曙海教育的課程培養了大批受企業歡迎的工程師。大批企業和曙海
建立了良好的合作關系。曙海教育的課程在業內有著響亮的知名度。
本課程,秉承20年積累的教學品質,以項目實現為導向,老師將會與您分享設計的全流程以及工具的綜合使用經驗、技巧。
課程大綱
?
?
全局質量與自動化測試典型問題分析
? 問題分析
? 討論
全局質量框架體系
? 需求質量
? 代碼質量
? 數據質量
? 產品質量
? 線上質量
? 運營分析
一切從需求開始
? 需求質量管理
? 需求質量度量
? 用戶故事地圖
? 需求 3 步評審法
代碼質量與自動化建設
?質量左移
? 缺陷修復成本比較
? 質量左移與右移
? 質量左移的目的
代碼評審與版本管理
? peer review
? git 分支管理
? 6 步提交法
? 代碼合并與 tag 管理
靜態代碼掃描
? 代碼質量
? 靜態代碼掃描的重要性
? 代碼的壞味道
? 爛代碼的代價-產生 bug 的原因
? 優秀代碼的評價標準
? 靜態測試與動態測試
? SVN/git 插件應用
? Sonar cube 簡介
? Sonar cube 配置
? 質量閾與掃描規則定義
? Sonar cube 與jenkins 集成
? 【案例】使用 sonar cube 進行代碼掃描
? 【案例】掃描結果郵件與消息通知
代碼編譯構建
? 定時構建
? 代碼提交觸發構建-鉤子設置
? 打包版本管理與顯示
? 并行化構建打包存檔
? 上傳 jar 包至 FTP 服務器
? 構建結束自動通知
? 代碼覆蓋率統計與分析
? java 代碼覆蓋統計工具jacoco
? 代碼覆蓋工具與 jenkins 集成
代碼質量評估
? 缺陷密度
? 如何統計缺陷密度
? 缺陷密度趨勢分析
產品質量自動化建設
測試環境自動化構建
? 綁定 jenkins slave 環境
? slave 標簽化管理
? 部署被測系統
? 指定 slave 環境運行測試
自動化測試框架 robot framework
? Robot Framework 簡介
? Robot Framework 安裝與配置
? 如何使用 Robot 集成外部腳本與工具
? 使用 Robot 集成腳本運行結果
? 【案例】使用 Robot 調用外部腳本
? 【案例】端到端框架架構設計
接口測試自動化
? Restful API 簡介
? 同步與異步接口
? 微服務測試邏輯
? 微服務測試要點
? Requests 主要功能
? Requests Lib 安裝與配置
? 基礎關鍵字
? 【案例】開發腳本定義關鍵字
? 使用 request lib 實現接口測試自動化
? Robot+request 開發接口自動化用例
? 接口自動化與 jenkins 集成
web 測試自動化與報告
? selenium 環境搭建與安裝
? WebDriver 的工作原理
? Selenium 2 與WebDriver
? 驗證頁面元素
? 定位頁面元素
? API 使用技巧
? Iframe 的處理
? 處理 windows 控件
? 常用關鍵字與操作
? 利用 python 開發自定義關鍵字
? 封裝關鍵字并復用
? 使用 robot +selenium 實現 web 自動化
? 展示 html 報告
? 結果郵件自動通知
使用 UIAutomator 進行移動端自動化測試
? UIAutomator 實現移動應用測試自動化
? UiAutomator 概述
? UiAutomator 實現自動化原理
? UiAutomator 環境配置
? UiAutomator 實現自動化工作流程
? UiAutomator 啟動與初始化
? 分析待測應用的 UI 元素
? 測試準備工作
? 把待測應用安裝到測試手機(設備)上
? 辨別待測應用 UI 控件
? 確保待測應用可用性
? 設置開發環境
? 創建 uiautomator 測試案例
? uiautomator API
? 運行 uiautomator 測試
測試自動化執行流水線
? API 測試自動化
? web 測試自動化
? app 測試自動化
? windows 測試自動化
測試自動化案例實踐
? 自動化測試的 T+0 實踐
? 穩定性測試常態化實踐
? 自動探壓測試實踐
? 集群并行化測試自動化實踐
持續集成與持續交付
DevOps 概述
? 什么是 DevOps
? DevOps 發展現狀
? DevOps 的作用
? DevOps 未來發展趨勢
DevOps 過程與體系
? DevOps 與敏捷開發過程
? DevOps 對應用程序發布的影響
? 角色定義與分工
? 變更管理
? 促進 DevOps 戰略
? DevOps 成功的關鍵因素
? DevOps 五大重點
? DevOps 度量標準
自動化與持續集成
? 什么是持續集成(CI)
? Jenkins 簡介
? Jenkins 主要功能
? 持續集成的優勢
? 持續集成面板
? 每日構建與持續集成
? 持續集成常見問題解決方案
? 持續集成環境配置
? 【案例】使用 Jenkins 進行持續集成
? 【案例】Jenkins 與Robot framework 集成
? Build flow 插件應用
? 公告板插件
? 郵件通知插件
持續集成最佳實踐
? 開發與測試配合
? 主干代碼持續集成
? 分支代碼持續集成
? Jenkins pipeline
?創建并行化構建與測試
? 添加 Jenkins Slave
? Jenkins swarm 插件
? 并行化測試
? 測試報告可視化分析
?
持續部署
? 持續交付與持續部署
? 持續部署的主要過程
? promote tag 機制
? post check
? 滾動升級
? 版本回滾
藍綠發布
? 什么是藍綠發布
? 藍綠發布實現步驟
? 【案例】使用 Jenkins 實現藍綠發布
?
測試平臺化與工程效率工具鏈體系建設~2 小時
工程效率賦能
? 什么是工程效率
? 工程效率團隊職責
? 工程效率賦能體系建設
? 對各個角色賦能思路
? 工具鏈構建
? 環境容器化
?
接口自動化平臺-測試用例自動化生成
? 文檔規范的前提
? 自動化生成自動化測試用例
? 接口測試用例自動化生成技術框架設計
? 測試用例自動化生成關鍵點
接口自動化平臺-代碼覆蓋率統計與分析與精準測試
? python 代碼覆蓋統計工具 coverage
? c++代碼覆蓋率工具 bullseye
? 精準測試概述
? 如何提升測試效率?
接口自動化平臺-環境自動化構建
? 測試環境虛擬化
? 一鍵創建/刪除/還原測試環境
? 容器化建設
? 【案例】docker 一鍵創建測試環境
? 測試環境共享
?
接口自動化平臺-結果自動化分析
? Bug 自動化定位
? 結果自動化分析技術框架設計
? 結果自動化分析關鍵點
?
性能測試平臺構建
? 性能測試平臺構建需求
? 性能測試平臺包含要素
?
? 如何智能化?
自動化探壓系統構建
? 自動化探壓邏輯
?
? 自動化探壓技術架構
? 自動化探壓實現過程
? 壓測環境管理
?
? 探尋最大并發數
?
? 探尋最大 TPS
? 效率提升統計
流量回放系統構建
? 什么是流量回放
? 流量回放目標
? 流量回放系統構建過程
瓶頸分析系統構建
? 瓶頸分析目標
? 內存瓶頸分析
? CPU 瓶頸分析
? 網絡瓶頸分析
? 磁盤 IO 瓶頸分析
?
測試人員職業規劃
? 測試人員的金字塔模型
? 質效合一 ? 技術專家路線
o 技術研發
?
o 工程效率
?
o 性能測試
?
o 安全性測試
?
o 自動化測試
?
o 算法測試
? 質量管理路線
? 項目管理路線
? 產品路線
上機實踐
? robotframework 搭建
? 接口自動化測試構建
? web 自動化測試構建
? 移動端自動化測試構建
? Jenkins 持續集成流水線構建