課程簡介
隨著微服務架構的迅速普及,越來越多的新產品直接采用了微服務架構,而老的產品也逐漸在向微服務架構做轉型。但是有微服務實施經驗的企業(yè)一定會深刻認識到微服務本身是一把雙刃劍,一方面不斷加速業(yè)務交付的速率,另一方面也對軟件測試和DevOps的各方面都提出了更高的要求。如果您所在的企業(yè)正在遭遇以下這些問題的話,那么這么課程將會是你的最佳選擇:
? 不理解微服務架構真正的優(yōu)勢,對項目采用微服務架構的原始驅動力理解不足
? 微服務的粒度很難把控,不理解如何使用DDD來為微服務設計保駕護航
? 微服務化之后,測試用例的數(shù)量激增,傳統(tǒng)的測試方法已經無法滿足測試需求
? 服務之間的依賴錯綜復雜,測試過程很難高效實現(xiàn)解耦
? 測試過程中,服務與服務之間的調用鏈關系復雜,出現(xiàn)問題很難高效追蹤
? 測試數(shù)據(jù)的構造將依賴于很多微服務的可用性,測試數(shù)據(jù)構建困難重重
? 微服務架構下,測試環(huán)境的搭建和維護變得非常困難
目標收益
? 深入理解微服務架構的前世今生,能夠站在架構師的角度深入理解微服務的核心思想與具體技術
? 深入理解微服務測試的挑戰(zhàn)和應對策略,能夠處理實際項目中典型的微服務測試難題
? 深入理解微服務測試所必須掌握的核心技術,包括API自動化測試技術,測試數(shù)據(jù)構造技術,測試環(huán)境準備的最佳實踐等等
? 深入理解基于消費者契約的微服務測試方法,能夠將該方法和傳統(tǒng)測試方法無縫集成,達到事半功倍的效果
? 通過深入淺出的講解,理解微服務時代測試領域的多項前沿技術,比如基于大數(shù)據(jù)的測試范圍選擇、混沌工程和測試結果自動分析等
? 包含大量獨家干貨內容,無法通過其他渠道獲取
培訓對象
? 測試工程師,測試開發(fā)工程師和測試技術骨干成員
? 測試技術負責人或測試架構師
? DevOps 資深工程師和技術負責人
? 開發(fā)工程師,開發(fā)技術經理,開發(fā)技術負責人
課程大綱
微服務和API測試的軟件架構基礎知識 |
? 測試工程師必須懂的架構知識 ? 業(yè)務驅動下的大型網站技術架構的技術演進 ? 從單一服務器談起 ? 各司其職的簡單架構 ? 分布式緩存集群的引入 ? 突破數(shù)據(jù)庫的瓶頸 ? 牲口 vs 寵物 ? 分布式服務的雛形 ? 微服務架構的誕生 ? 下一代微服務:服務網格 ? 基于 Test as a Service 架構的測試管理 ? A/B測試和灰度發(fā)布 |
API自動化測試基礎 |
? 主流API測試方法簡介 ? API測試和微服務測試的關系 ? 傳統(tǒng)API測試工具的局限性 ? 基于Postman的API測試用例管理 ? API測試的數(shù)據(jù)驅動 ? API測試的數(shù)據(jù)準備 ? 基于Postman的自動化代碼生成 ? Postman + Newman ? Postman + Newman + Jenkins ? 基于JMeter的API功能測試 ? 基于JMeter的API性能測試 |
API自動化測試進階 |
? API測試的數(shù)據(jù)準備 ? API測試與CI/CD的集成 ? API的并發(fā)測試 ? API的性能測試 ? API測試的難點與解決思路:數(shù)據(jù)傳遞 ? API測試的難點與解決思路:順序調用 ? API測試的難點與解決思路:異步API ? API測試的難點與解決思路:API的后向兼容性 ? API測試一站式解決方案:HttpRunner使用(Python) ? API測試一站式解決方案:HttpRunner進階(Python) |
API自動化測試框架設計與創(chuàng)新 |
? 最原始的API測試框架 ? API測試框架的開發(fā)與關鍵技術 ? 引入 API Test Executor 實現(xiàn) Code-based API 自動化測試 ? 引入 Data-Driven Test Data 的自動生成 ? 引入 Parallel Execution Controller 實現(xiàn) API 并發(fā)測試 ? 引入 Load Generator Cluster 實現(xiàn) API 高并發(fā)和壓力測試 ? 引入 2R History Database 實現(xiàn) API Diff Identification |
微服務架構下的API測試的挑戰(zhàn)與應對策略 |
? 微服務架構下的API測試挑戰(zhàn) ? 微服務架構下測試用例數(shù)量激增的應對策略 ? 基于風險驅動的測試策略設計 ? 基于流量回放的微服務測試技術初探 ? 基于流量回放的微服務測試技術的落地案例解讀 ? 基于消費者契約的API測試 ? 基于契約的Mock Service實現(xiàn)API測試依賴解耦 ? 基于消費者契約的契約捕獲 – 基于Gateway的方法 ? 基于消費者契約的契約捕獲 – 基于Splunk的方法 ? Demo分享:Spring Cloud Contract實例 ? 微服務測試的版本管理方法 ? 微服務測試的環(huán)境準備難題與業(yè)界實踐 ? 基于容器技術的微服務測試框架設計 |
微服務測試中測試數(shù)據(jù)準備的最佳實踐 |
? 微服務測試中數(shù)據(jù)的復雜性與難點 ? 基于實時數(shù)據(jù)創(chuàng)建的測試數(shù)據(jù)準備策略 ? 基于Out-of-box的測試數(shù)據(jù)準備策略 ? 測試數(shù)據(jù)準備工具的行業(yè)最佳實踐 ? 測試數(shù)據(jù)準備 V1.0時代 ? 測試數(shù)據(jù)準備 V2.0時代 ? 測試數(shù)據(jù)準備 V3.0時代 ? 測試數(shù)據(jù)準備 V4.0時代 ? Test Data Service的架構設計與實現(xiàn) ? 數(shù)據(jù)準備的創(chuàng)新設計(獨家干貨) ? 實際案例分享:全球大型電商網站測試數(shù)據(jù)的最佳實踐 |
微服務測試環(huán)境和測試執(zhí)行環(huán)境的最佳實踐 |
? 早期的測試執(zhí)行環(huán)境 ? 基于Jenkins觸發(fā)測試執(zhí)行 ? 引入 Test Runner / Test Execution System ? CI/CD集成的設計與最佳實踐 ? 基于 Jenkins Cluster 提高測試并行執(zhí)行能力 ? 基于 Docker 實現(xiàn) Jenkins Cluster 的動態(tài)擴展與收縮 ? 容器技術在微服務測試中的應用與落地案例解析 ? 微服務測試環(huán)境(SUT)搭建的方法與策略 ? 基于K8S的POD來構建高效的測試環(huán)境方法 |
微服務架構下測試報告和debug的最佳實踐 |
? 全棧測試日志的基本概念 ? 全棧測試日志的實現(xiàn)思路與工具 ? 調用鏈路日志分析的基本思路和方法 ? 微服務架構下debug的基本思路和方法 ? 微服務全棧測試報告實例解析 |
微服務架構下軟件測試的前沿技術 |
? 基于大數(shù)據(jù)和業(yè)務建模的測試范圍選取方法 ? 微服務測試中失敗測試用例執(zhí)行結果的自動化分析 ? 微服務測試用例的自動生成技術初探 ? 微服務的混沌工程 |
微服務和API測試的軟件架構基礎知識 ? 測試工程師必須懂的架構知識 ? 業(yè)務驅動下的大型網站技術架構的技術演進 ? 從單一服務器談起 ? 各司其職的簡單架構 ? 分布式緩存集群的引入 ? 突破數(shù)據(jù)庫的瓶頸 ? 牲口 vs 寵物 ? 分布式服務的雛形 ? 微服務架構的誕生 ? 下一代微服務:服務網格 ? 基于 Test as a Service 架構的測試管理 ? A/B測試和灰度發(fā)布 |
API自動化測試基礎 ? 主流API測試方法簡介 ? API測試和微服務測試的關系 ? 傳統(tǒng)API測試工具的局限性 ? 基于Postman的API測試用例管理 ? API測試的數(shù)據(jù)驅動 ? API測試的數(shù)據(jù)準備 ? 基于Postman的自動化代碼生成 ? Postman + Newman ? Postman + Newman + Jenkins ? 基于JMeter的API功能測試 ? 基于JMeter的API性能測試 |
API自動化測試進階 ? API測試的數(shù)據(jù)準備 ? API測試與CI/CD的集成 ? API的并發(fā)測試 ? API的性能測試 ? API測試的難點與解決思路:數(shù)據(jù)傳遞 ? API測試的難點與解決思路:順序調用 ? API測試的難點與解決思路:異步API ? API測試的難點與解決思路:API的后向兼容性 ? API測試一站式解決方案:HttpRunner使用(Python) ? API測試一站式解決方案:HttpRunner進階(Python) |
API自動化測試框架設計與創(chuàng)新 ? 最原始的API測試框架 ? API測試框架的開發(fā)與關鍵技術 ? 引入 API Test Executor 實現(xiàn) Code-based API 自動化測試 ? 引入 Data-Driven Test Data 的自動生成 ? 引入 Parallel Execution Controller 實現(xiàn) API 并發(fā)測試 ? 引入 Load Generator Cluster 實現(xiàn) API 高并發(fā)和壓力測試 ? 引入 2R History Database 實現(xiàn) API Diff Identification |
微服務架構下的API測試的挑戰(zhàn)與應對策略 ? 微服務架構下的API測試挑戰(zhàn) ? 微服務架構下測試用例數(shù)量激增的應對策略 ? 基于風險驅動的測試策略設計 ? 基于流量回放的微服務測試技術初探 ? 基于流量回放的微服務測試技術的落地案例解讀 ? 基于消費者契約的API測試 ? 基于契約的Mock Service實現(xiàn)API測試依賴解耦 ? 基于消費者契約的契約捕獲 – 基于Gateway的方法 ? 基于消費者契約的契約捕獲 – 基于Splunk的方法 ? Demo分享:Spring Cloud Contract實例 ? 微服務測試的版本管理方法 ? 微服務測試的環(huán)境準備難題與業(yè)界實踐 ? 基于容器技術的微服務測試框架設計 |
微服務測試中測試數(shù)據(jù)準備的最佳實踐 ? 微服務測試中數(shù)據(jù)的復雜性與難點 ? 基于實時數(shù)據(jù)創(chuàng)建的測試數(shù)據(jù)準備策略 ? 基于Out-of-box的測試數(shù)據(jù)準備策略 ? 測試數(shù)據(jù)準備工具的行業(yè)最佳實踐 ? 測試數(shù)據(jù)準備 V1.0時代 ? 測試數(shù)據(jù)準備 V2.0時代 ? 測試數(shù)據(jù)準備 V3.0時代 ? 測試數(shù)據(jù)準備 V4.0時代 ? Test Data Service的架構設計與實現(xiàn) ? 數(shù)據(jù)準備的創(chuàng)新設計(獨家干貨) ? 實際案例分享:全球大型電商網站測試數(shù)據(jù)的最佳實踐 |
微服務測試環(huán)境和測試執(zhí)行環(huán)境的最佳實踐 ? 早期的測試執(zhí)行環(huán)境 ? 基于Jenkins觸發(fā)測試執(zhí)行 ? 引入 Test Runner / Test Execution System ? CI/CD集成的設計與最佳實踐 ? 基于 Jenkins Cluster 提高測試并行執(zhí)行能力 ? 基于 Docker 實現(xiàn) Jenkins Cluster 的動態(tài)擴展與收縮 ? 容器技術在微服務測試中的應用與落地案例解析 ? 微服務測試環(huán)境(SUT)搭建的方法與策略 ? 基于K8S的POD來構建高效的測試環(huán)境方法 |
微服務架構下測試報告和debug的最佳實踐 ? 全棧測試日志的基本概念 ? 全棧測試日志的實現(xiàn)思路與工具 ? 調用鏈路日志分析的基本思路和方法 ? 微服務架構下debug的基本思路和方法 ? 微服務全棧測試報告實例解析 |
微服務架構下軟件測試的前沿技術 ? 基于大數(shù)據(jù)和業(yè)務建模的測試范圍選取方法 ? 微服務測試中失敗測試用例執(zhí)行結果的自動化分析 ? 微服務測試用例的自動生成技術初探 ? 微服務的混沌工程 |