Pycharm環(huán)境配置運行機(jī)制 |
Pycharm 安裝和配置、Python程序多種運行方式虛擬解釋器環(huán)境運行原理 |
變量存儲與數(shù)據(jù)類型 |
變量的含義、存儲方式、訪問機(jī)制 |
常用運算符 |
賦值運算符、復(fù)合賦值運算符、算術(shù)運算符、比較運算符邏輯運算符,成員運算符,身份運算符 |
條件判斷 |
布爾表達(dá)式、多種條件判斷(if、if else、if elif else、if嵌套)模式用法提煉,使用場景透析 |
循環(huán)處理 |
for/while 循環(huán)、break/continue對比、pass關(guān)鍵字嵌套循環(huán),循環(huán)使用案例場景 |
字符集與編碼 |
字符集、字符編碼與解碼案例講解、Python對中文的處理 |
字符串操作 |
字符串定義、字符串常見操作join | split | replace | strip等字符串格式化講解 |
列表 |
列表定義與使用、添加、刪除等操作、索引、切片、列表推導(dǎo)式、多維列表復(fù)制原理(深拷貝、淺拷貝)講解 |
集合 |
集合的定義與使用、常用api、集合推導(dǎo)式 |
元組 |
元祖定義與使用、元組特性、常用api、元祖與列表的區(qū)別 |
字典 |
鍵值對操作、常用方法講解、字典推導(dǎo)式、字典與json 互換 |
文件操作 |
文件對像,文件讀取、文件寫入、with用法 |
模塊與包 |
模塊、包的定義、引入方式import、第三方包引入相對路徑與路徑 |
函數(shù) |
定義與使用、函數(shù)封裝技巧、函數(shù)返回值、缺省參數(shù)默認(rèn)參數(shù)、關(guān)鍵字參數(shù)、可變數(shù)量參數(shù)args| kwargs |
Python 內(nèi)置函數(shù) |
科學(xué)計算函數(shù)模塊Math、日期與時間處理函數(shù)模塊Datetime、Eval函數(shù)、匿名函數(shù)Lambda 表達(dá)式 |
面向?qū)ο蟾拍?/td>
| 面向?qū)ο缶幊獭㈩?、對象的概念、抽象思維 |
Python 類與對象 |
類定義:class 關(guān)鍵字、類屬性、實例屬性、私有屬性構(gòu)造方法、實例方法、類方法、靜態(tài)方法、 |
繼承與類型檢查 |
類的繼承定義、構(gòu)造函數(shù)繼承、子類對父類方法的重寫多繼承、類型檢查 |
調(diào)試技巧、代碼跟蹤 |
Debug 的使用、代碼調(diào)試、定位、分析技術(shù) |
異常處理 |
異常的產(chǎn)生、捕獲、處理操作、編寫自定義異常、raise用法異常機(jī)制項目場景分析與提煉 |
內(nèi)置庫Json模塊 |
Json數(shù)據(jù)處理:字典與json 轉(zhuǎn)換、json.loads、json.dump、indent縮進(jìn)、編碼 |
正則表達(dá)式re模塊的使用 |
常用語法、findall、search、match等方法分析講解數(shù)據(jù)分析案例實戰(zhàn) |
Yaml配置文件實戰(zhàn) |
Yaml 文件語法、Yaml 測試用例文件Python 讀寫操作Yaml文件實戰(zhàn) |
Log日志操作 |
Logging 模塊使用、日志級別講解Logging 模塊代碼二次封裝實戰(zhàn) |
Excel操作實戰(zhàn) |
Excel 文檔數(shù)據(jù)讀寫操作、批量操作Excel 數(shù)據(jù) |
裝飾器 |
裝飾器的原理和用途、內(nèi)置裝飾器實現(xiàn)帶參數(shù)的裝飾器、常見裝飾器問題分析 |
Python內(nèi)置裝飾器 |
@classmethod、@staticmethod |
網(wǎng)絡(luò)爬蟲實戰(zhàn)-Requests庫 |
Requests 庫請求構(gòu)建、響應(yīng)數(shù)據(jù)爬取、代碼實現(xiàn)數(shù)據(jù)處理 |
網(wǎng)絡(luò)爬蟲實戰(zhàn)-Mysql數(shù)據(jù)庫實戰(zhàn) |
數(shù)據(jù)庫表的定義、數(shù)據(jù)庫常用操作(增、刪、改、查)網(wǎng)絡(luò)爬蟲數(shù)據(jù)存儲數(shù)據(jù)庫 |
Pytest基礎(chǔ) |
Pytest 簡介、Pytest 環(huán)境安裝,運行一個測試腳本 |
Pytest命名規(guī)則 |
模塊命名、類命名、方法命名 |
測試用例結(jié)構(gòu) |
測試用例名字、步驟 |
測試框架結(jié)構(gòu) |
模塊級、函數(shù)級、類級、方法級、測試用例之間的順序 |
參數(shù)化用例 |
單參數(shù)、多參數(shù)、用例重命名 |
標(biāo)記測試用例 |
添加用例標(biāo)簽 |
設(shè)置跳過預(yù)期失敗用例 |
用例跳過、skip、skipif、xfail |
運行用例發(fā)現(xiàn) |
從多個文件/包里面運行指定的測試用例 |
測試用例調(diào)度與運行 |
按照一定的順序和規(guī)則Pytest-ordering執(zhí)行,并生成結(jié)果 |
測試結(jié)果判斷 |
通過斷言判斷預(yù)期結(jié)果和實際結(jié)果的差異 |
測試報告 |
統(tǒng)計測試進(jìn)度、耗時、生成測試報告 |
命令行常用參數(shù) |
Pytest命令行常用參數(shù)說明 |
異常處理 |
assert、 python try...except、異常斷言 |
數(shù)據(jù)驅(qū)動-Yaml |
利用外部數(shù)據(jù)源Yaml 管理測試用例數(shù)據(jù) |
數(shù)據(jù)驅(qū)動-Excel |
利用外部數(shù)據(jù)源Excel管理測試用例數(shù)據(jù) |
數(shù)據(jù)驅(qū)動-Json |
利用外部數(shù)據(jù)源Json 管理測試用例數(shù)據(jù) |
測試用例生命周期 |
Fixture 作為參數(shù)使用、Fixture作用范圍 |
conftest.py作用 |
文件結(jié)構(gòu)詳解、測試用例前置準(zhǔn)備和后置清理工作統(tǒng)一登錄操作封裝 |
yield 關(guān)鍵字 |
yield 作用、用法、使用場景 |
配置文件 |
Pytest.ini配置文件、添加默認(rèn)參數(shù) |
插件 |
Pytest 插件的種類 |
內(nèi)置 hook插件 |
內(nèi)置插件(hook函數(shù)) |
插件開發(fā) |
Pytest 插件開發(fā)、參數(shù)詳解、打包發(fā)布 |
分布式運行 |
Pytest-xdist分布式原理和流程 |
框架特點: |
|
框架支持主流接口協(xié)議: TTP(S)/HTTP2/Websocket |
擴(kuò)展支持 TCP/UDP/RPC等更多協(xié)議 |
測試用例支持常用格式Y(jié)aml/Json/Pytest |
支持測試用例不同格式之間的轉(zhuǎn)換 |
使用HAR/Postman/Swagger/curl等生成測試用例 |
使用網(wǎng)頁自動生成Yaml、Json 測試用例 |
可以創(chuàng)建任意復(fù)雜的測試場景 |
代碼持續(xù)集成、實時查看線上測試報告 |
測試項目: |
|
企業(yè)級大型電商系統(tǒng) |
基于 docker 部署的9個微服務(wù)架構(gòu)、100多個接口 |
課程內(nèi)容: |
|
項目介紹 |
大型電商系統(tǒng)技術(shù)架構(gòu)說明、接口文檔說明 |
Postman 實戰(zhàn) |
使用Postman實現(xiàn)接口測試 |
Fiddler 智能抓包分析 |
學(xué)會抓包、看抓包數(shù)據(jù),提取請求體、數(shù)據(jù)類型、接口鑒權(quán)方式 |
Requests 模塊詳解 |
Requests 庫安裝與導(dǎo)入、發(fā)送請求、解析數(shù)據(jù)實戰(zhàn) |
接口請求構(gòu)造 |
Http 請求頭、請求參數(shù)、請求方法構(gòu)造 |
請求方法 |
增(post)、刪(delete)、改(put)、查(get)等常用接口請求方法以及本質(zhì)區(qū)別和抓包詳解 |
請求數(shù)據(jù)格式 |
Post 請求四種數(shù)據(jù)類型介紹、Form 表單和Multipart 區(qū)別Json 格式和 Form 表單格式的區(qū)別、兩種Json 結(jié)構(gòu)、實戰(zhàn) |
權(quán)限認(rèn)證方式 |
解決接口的session+cookie 與token 權(quán)限認(rèn)證處理 |
環(huán)境變量配置管理 |
多套測試環(huán)境切換測試方案實戰(zhàn)測試用例環(huán)境變量設(shè)置邏輯及代碼實戰(zhàn) |
測試框架Pytest實戰(zhàn) |
項目中引入Pytest 測試框架、執(zhí)行測試用例Fixture 結(jié)合 yeild 數(shù)據(jù)初始化及測試后清理操作 |
文件等附件.上傳下載 |
文件/圖片/視頻等附件上傳功能分析與實現(xiàn) |
接口加密分析 |
解決接口加密中Base64、SHA256、MD5、RSA等加密技術(shù) |
多接口測試用例處理 |
解決項目中,數(shù)據(jù)關(guān)聯(lián)接口、多業(yè)務(wù)復(fù)雜接口場景 |
接口前置后置處理 |
請求的前置處理、后置處理:請求前從數(shù)據(jù)庫讀取數(shù)據(jù)返回數(shù)據(jù)邊界值、正則、Jsonpath等不同提取方法實現(xiàn) |
斷言處理 |
返回狀態(tài)碼、返回內(nèi)容等斷言 |
多種場景斷言 |
不同場景實現(xiàn)assert斷言與Pytest.assume( )斷言 |
數(shù)據(jù)庫斷言 |
mysql、redis、mongodb 數(shù)據(jù)庫操作類代碼封裝斷言數(shù)據(jù)庫數(shù)據(jù)是否預(yù)期結(jié)果 |
企業(yè)級在線接口文檔Swagger框架 |
離線導(dǎo)出markdown 文檔、查看項目接口詳情在線 debug 測試接口技巧 |
Yaml/json測試用例編寫詳解 |
Yaml 格式用例結(jié)構(gòu)編寫詳解、json 格式用例結(jié)構(gòu)編寫詳解 |
網(wǎng)頁生成Yamljson測試用例 |
用戶在網(wǎng)頁上按照格式填寫測試用例直接保存為Yaml和Json 格式的測試用例 |
用例之間轉(zhuǎn)換 |
HAR/Postman/Swagger/Curl 測試用例轉(zhuǎn)換Yaml/Json |
測試數(shù)據(jù)批量隨機(jī)生成 |
數(shù)據(jù)生成工具Faker、Mimesis 生成任意類型組合數(shù)據(jù) |
數(shù)據(jù)驅(qū)動 |
Pytest自身parametrize技術(shù)實現(xiàn)數(shù)據(jù)驅(qū)動、封裝數(shù)據(jù)驅(qū)動代碼 |
Yaml數(shù)據(jù)驅(qū)動設(shè)計 |
Yaml配置文件、Yaml測試用例設(shè)計、結(jié)合Pytest框架自動執(zhí)行 |
業(yè)務(wù)流實戰(zhàn) |
下訂單多個完整業(yè)務(wù)流測試開發(fā)實戰(zhàn) |
Mock接口測試實戰(zhàn) |
Mock 的價值和意義、實戰(zhàn)練習(xí) |
流量回放 |
gor 流量回放體系 |
代碼分層設(shè)計 |
根據(jù)規(guī)范創(chuàng)建項目、包、庫、文件夾并介紹各個模塊的作用,企業(yè)級項目分層設(shè)計理念 |
日志模塊設(shè)計 |
自動化測試中,接口異常情況捕獲與log處理技術(shù) |
測試報告 |
基于 allure 輸出測試報告、自定義測試報告 |
Jenkins持續(xù)集成-基礎(chǔ) |
CI/CD 持續(xù)集成流程剖析、Docker技術(shù)搭建Jenkins 環(huán)境Jenkins 配置與操作 |
Jenkins - 進(jìn)階 |
結(jié)合項目,實現(xiàn)自動執(zhí)行與測試結(jié)果郵件通知到相關(guān)人員 |
Git介紹 |
Github、Gitlab、Gitee優(yōu)缺點對比、項目如何選型 |
Git 安裝操作 |
Git客戶端安裝、Git常用指令講解、Git Bash 操作 |
項目代碼關(guān)聯(lián)Git |
實現(xiàn) Pycharm 自動Commit與Push 代碼到Gitee拉取 Gitee 代碼到本地Pycharm、提交代碼沖突解決 |
Docker 技術(shù)簡介 |
Docker 工作原理、Docker 容器技術(shù)使用場景分析 |
Docker 容器環(huán)境搭建 |
Docker 容器環(huán)境搭建,配置加速器、常見搭建問題講解 |
Docker 常用指令講解 |
Docker 鏡像管理、Docker 容器使用、容器常用指令講解 |
DockerFile 構(gòu)建鏡像 |
DockerFile 語法講解、打包自定義項目鏡像 |
數(shù)據(jù)卷與端口映射 |
數(shù)據(jù)掛載意義、掛載規(guī)則與匿名掛載 |
Docker 容器管理平臺portainer |
portainer 環(huán)境搭建、portainer 操作講解 |
Docker-compose容器編排技術(shù) |
Docker-compose 原理詳解、搭建Docker-compose 環(huán)境 |
Jenkins 簡介 |
CI/CD 持續(xù)集成流程剖析、Jenkins在DevOps 流程的角色Jenkins 工作原理 |
Jenkins 環(huán)境部署 |
Docker 技術(shù)搭建Jenkins環(huán)境、Jenkins插件離線安裝 |
Jenkins 配置 |
系統(tǒng)配置、全局變量設(shè)置、郵件配置、報告配置、觸發(fā)器配置定時器觸發(fā)、Gitee觸發(fā) |
Jenkins 分布式配置 |
Jenkins 分布式場景工作原理、Jenkins 節(jié)點配置 |
Pipeline 流水線 |
Pipeline 使用場景、Pipeline 腳本語法 |
Jenkins 持續(xù)集成 |
結(jié)合項目,實現(xiàn)自動執(zhí)行與測試結(jié)果郵件通知到相關(guān)人員 |
企業(yè)級自動化測試流程 |
Docker搭建Jenkins+GitLab+Python結(jié)合Pytest執(zhí)行接口自動化測試發(fā)送allure報告與郵件 |
Selenium 環(huán)境搭建 |
Selenium 安裝、Webdriver安裝、常見環(huán)境搭建問題詳解 |
Selenuim 原理 |
Webdriver與瀏覽器的通信原理解析 |
自動化用例錄制錄制代碼結(jié)構(gòu)分析 |
Selenium IDE、錄制、回放、基本使用錄制代碼解析,代碼結(jié)構(gòu)優(yōu)化 |
Web 瀏覽器控制 |
打開網(wǎng)頁、刷新、回退、最大化、最小化 |
瀏覽器操作 |
獲取頁面 title、url、刷新頁面、關(guān)閉頁面、截屏 |
常見控件定位方法 |
Chrome 開發(fā)工具使用、id、name、class、tag、鏈接等方法 |
常見控件交互方法 |
輸入,清空,獲取元素文本、尺寸等屬性信息 |
Xpath 定位頁面元素 |
通過xpath 表達(dá)式選擇元素、xpath定位技巧匯總 |
Xpath 軸定位 |
分析 xpath 軸定位使用場最、parentfollowing-sibling 等級別元素實戰(zhàn)案例講解 |
Css 定位頁面元素 |
通過css表達(dá)式選擇元素、css多屬性高級用法定位 |
選擇框操作 |
單選框、多選框、復(fù)選框操作、下拉框選擇、定位動態(tài)元素、定位技巧 |
三種等待方式 |
強制等待、隱式等待、顯式等待的使用場景 |
高級控件交互方法 |
右鍵、頁面滑動、表單填寫等自動化動作 |
Frame、多窗口處理 |
多窗口,多 Frame 下的窗口識別與切換 |
文件上傳、下載 |
文件上傳、下載的自動化與彈框處理機(jī)制 |
鍵盤鼠標(biāo)操作 |
鼠標(biāo)懸停、模擬鍵盤操作、鼠標(biāo)雙擊等操作 |
Cookie 操作 |
獲取cookie、清空cookie、設(shè)置cookie設(shè)置開發(fā)模式防識別selenium、模擬登陸 |
執(zhí)行javascript腳本 |
使用selenium 直接在當(dāng)前頁面中進(jìn)行js交互 |
Cypress 安裝配置 |
安裝 Node.js 環(huán)境、安裝Cypress、常見環(huán)境搭建問題詳解 |
Cypress 架構(gòu)及原理 |
Cypress 驅(qū)動瀏覽器運行原理解析 |
Cypress 開發(fā)環(huán)境搭建 |
Cypress 開發(fā)工具安裝介紹 |
Cypress 特性及優(yōu)勢 |
時間旅游、可調(diào)試、自動等待、函數(shù)間諜實時重新加載等特性優(yōu)勢介紹 |
Cypress 測試框架拆解 |
項目目錄結(jié)構(gòu)解析、測試用例靜態(tài)數(shù)據(jù)存儲、測試用例文件格式插件、配置信息文件設(shè)置、可視視圖、自定義Cypress 等 |
Cypress 與頁面元素定位 |
還有id 選擇器、class 選擇器、attributes屬性選擇器:nth-child(n)選擇器、Cypress.$定位器、定位策略優(yōu)先級等 |
Cypress 與頁面元素交互 |
元素查找基本方法、輔助方法、操作元素方法、導(dǎo)航相關(guān)方法 |
測試用例結(jié)構(gòu) |
測試用例結(jié)構(gòu)解析、JavaScript回調(diào)方式編寫測試用例 |
斷言實踐 |
斷言格式:BDD、TDD內(nèi)置斷言、隱性斷言顯性斷言、混合斷言 |
數(shù)據(jù)驅(qū)動策略 |
通過Fixture方式,通過自定義數(shù)據(jù)文件等方式動態(tài)生成測試用例 |
測試運行實踐 |
靜態(tài)挑選、動態(tài)挑選待運行測試用例 |
動態(tài)生成測試用例 |
相同功能測試用例封裝動態(tài)生成測試用例 |
Cypress 并行執(zhí)行測試 |
GitLab 上運行多個作業(yè)、分離測試文件 |
Cypress 自帶測試報告 |
內(nèi)置測試報告、生成定制化測試報告、混合測試報告 |
Allure 測試報告 |
插件型測試報告:Allure測試報告安裝、配置生成測試報告原理分析、生成報告配置 |
Playwright安裝配置 |
一鍵安裝方便快速進(jìn)入開發(fā) |
Playwright架構(gòu)及原理 |
Playwright 驅(qū)動瀏覽器執(zhí)行的原理 |
七大特性及優(yōu)勢 |
Playwright 七大特性及優(yōu)勢 |
Context 獨立匿名會話模式 |
瀏覽器獨立上下文、獨立會話模式 |
頁面元素定位 |
文本定位器、css 定位器、偽類定位法、鏈?zhǔn)竭x擇器等定位方法 |
頁面元素操作 |
頁面操作:前往頁面、前進(jìn)、后退、截圖、打印等操作元素等待:等待元素的四種狀態(tài)元素操作:元素的、填充、獲取等操作 |
選擇框操作 |
單選框、多選框、復(fù)選框操作、下拉框選擇定位動態(tài)元素、定位技巧 |
復(fù)雜元素操作 |
復(fù)雜 frame 操作、隨機(jī)選擇一個選項框等復(fù)雜操作 |
鍵盤鼠標(biāo)操作 |
鼠標(biāo)懸停、模擬鍵盤操作、鼠標(biāo)雙擊等操作 |
Playwright 網(wǎng)絡(luò)攔截 |
基于瀏覽器上下文范圍的網(wǎng)絡(luò)攔截以便進(jìn)行終止或者模擬網(wǎng)絡(luò)請求實現(xiàn)Mock 請求 |
自動等待功能 |
自動等待直到元素準(zhǔn)備就緒、提高可靠性、簡化測試編寫流程 |
斷言實踐 |
元素斷言、頁面斷言、內(nèi)容斷言等斷言方式 |
框架設(shè)計思路分析 |
結(jié)合商城項目詳解Web自動化框架設(shè)計思想、優(yōu)勢分析 |
定位業(yè)務(wù)涉及元素 |
練習(xí)多種定位方法、元素定位表達(dá)式保存在配置文件Yaml 中 |
測試用例流程設(shè)計 |
測試裝置的應(yīng)用,套件級別的初始化與清理用例級別的初始化與清理 |
Web 自動化用例設(shè)計 |
Web自動化用例測試設(shè)計理念、用例設(shè)計技巧 |
業(yè)務(wù)腳本開發(fā) |
實現(xiàn)場景常規(guī)模式腳本開發(fā)、調(diào)試、優(yōu)化技巧 |
Cookie復(fù)用 |
利用 Cookie 復(fù)用實現(xiàn)自動化登錄 |
PageObject 模式介紹 |
PageObject 模式的發(fā)展歷史介紹、六大設(shè)計原則 |
PageObject 模式應(yīng)用 |
封裝頁面、元素、元素操作到類中、提高代碼復(fù)用性BasePage封裝、基于Page Object模式的測試用例編寫 |
Pytest 在 UI自動化測試中的具體應(yīng)用 |
項目中引入Pytest測試框架、執(zhí)行測試用例Fixture數(shù)據(jù)初始化及環(huán)境清除 |
Yaml 對象庫管理 |
使用 Yaml文件統(tǒng)一管理對象識別屬性 |
數(shù)據(jù)驅(qū)動 |
Parametrize技術(shù)實現(xiàn)數(shù)據(jù)驅(qū)動,封裝數(shù)據(jù)驅(qū)動代碼 |
工具類封裝 |
頂目中參數(shù)配置,對比操作等常用操作類封裝 |
Mark 定制化執(zhí)行 |
Mark 技術(shù)定制化執(zhí)行用例:業(yè)務(wù)、優(yōu)先級、冒煙回歸用例等不同業(yè)務(wù)、模式的設(shè)置 |
失敗用例重跑機(jī)制 |
Pytest 實現(xiàn)頁面操作失敗,記錄日志,并按照設(shè)定規(guī)則重運行 |
異常自動截圖 |
測試用例失敗時自動截圖 |
日志模塊設(shè)計 |
過程可追溯、異常情況捕獲與日志處理 |
Allure 定制化報告 |
Allure 報告分級顯示、定制化標(biāo)簽、用例優(yōu)先級、運行環(huán)境設(shè)置 |
Jenkins 持續(xù)集成 |
構(gòu)建技術(shù)、實現(xiàn)自動執(zhí)行、測試結(jié)果郵件通知到相關(guān)人員 |
環(huán)境安裝與使用 |
Java 環(huán)境、Android SDK 環(huán)境搭建 |
Adb 基礎(chǔ)操作 |
Adb 原理、查看連接設(shè)備、安裝卸載app應(yīng)用文件的上傳和下載等常用操作 |
Appium 安裝 |
Appium 介紹、Appium Desktop 安裝Appium server安裝、Appium client 安裝 |
Session 概念 |
Appium 自動化 Session的概念與作用、Session 創(chuàng)建 |
測試用例錄制 |
Appium Desktop 用法、錄制、回放、基本使用 |
錄制代碼結(jié)構(gòu)分析 |
錄制代碼解析、代碼結(jié)構(gòu)優(yōu)化 |
Capability 配置參數(shù)解析 |
Desired Capability配置文檔、公用Capability配置信息 |
App 自動化控制 |
Android/ los 專屬Capability配置信息 |
APP 界面元素 |
數(shù)據(jù)清理 啟動關(guān)閉 |
查看工具 |
uiautomatorviewer、appium inspector |
App 界面組成 |
Android布局、四大組件、常用控件介紹 |
APP 界面常見控件定位方法 |
id,aid,xpath 定位方法 |
100%滿意度
北京慧測大模型應(yīng)用&軟件測試實訓(xùn)基地
綜合
環(huán)境 : 5.0師資 : 5.0教學(xué) : 5.0