比培訓機構還詳細的 Python 學習路線,你信嗎 0^0
- 2021 年 9 月 12 日
- 筆記
- Python, 測試進階知識系列 - Python
前言
- 這其實是將自己寫的文章進行一個總結分類,並不代表最佳學習路線
- 會不斷更新這篇文章…沒鏈接的文章正在編寫ing…會不會哪天我的這個目錄就出現在培訓機構的目錄上了…
- 目前實戰比較少(要是有多點實戰,我就開培訓了哈哈哈)
Python
基礎
數據類型相關
Python – 基礎數據類型 Number 數字、bool 布爾、complex 複數
Python – 字元串 encode
循環相關
函數相關
Python – 函數形參之必填參數、默認參數、可變參數、關鍵字參數的詳細使用
Python – 基本數據處理函數round()、int()、floor()、ceil()
Python – 3.8 新特性之僅位置參數 & 僅關鍵字參數
Python – bytes()
面向對象編程
Python – 面向對象編程 – 什麼是 Python 類、類對象、實例對象Python – 面向對象編程 – 什麼是對象和類
Python – 面向對象編程 – __init__() 構造方法
Python – 面向對象編程 – __del__() 析構方法
Python – 面向對象編程 – 類變數、實例變數/類屬性、實例屬性
Python – 面向對象編程 – 實例方法、靜態方法、類方法
Python – 面向對象編程 – 公共屬性、保護屬性、私有屬性
Python – 面向對象編程 – 使用 super() 的一些注意事項
Python – 面向對象編程 – __new__() 和單例模式
Python – 面向對象編程 – 魔術方法(雙下劃線方法)
文件相關
Python – with open()、os.open()、open()的詳細使用
Python – 文件讀取read()、readline()、readlines()區別
高級點的
Python 高級特性(2)- 可迭代對象 iterable
typing、類型提示
Python – typing 模組 —— Callable
Python – typing 模組 —— Any Type
Python – typing 模組 —— TypeVar 泛型
Python – typing 模組 —— Optional
Pydantic
Python – pydantic 入門介紹與 Models 的簡單使用
新奇的 Python 庫
Python – 超好用的第三方庫pathlib,快速獲取項目中各種路徑
Python – loguru日誌庫,高效輸出控制台日誌和日誌記錄
常見問題解決方案
Python常見問題 – 使用openpyxl模組時出現錯誤: zipfile.BadZipFile: File is not a zip file
Python常見問題 – 寫入數據到 excel 報 ValueError: invalid literal for int() with base 10 錯誤
做項目可能會用到的
Python – 生成 requirement.txt 文件
資料庫相關
新人寫的不著調工具類
僅做記錄,不值得參考
很low的基礎習題集
介面自動化
python介面自動化測試 – configparser配置文件解析器詳細使用
python介面自動化測試 – unittest框架基本使用
python介面自動化測試 – unittest框架suite、runner詳細使用
python介面自動化測試 – requests庫的post請求進行文件下載
python介面自動化測試 – requests庫的post請求進行文件上傳
python介面自動化測試 – requests庫的基礎使用
python介面自動化測試 – 數據驅動DDT模組的簡單使用
常見問題解決方案
Python常見問題 – python3 requests庫提示警告InsecureRequestWarning的問題
Python常見問題 – python3 使用requests發送HTTPS請求報certificate verify failed 錯誤
Pytest+Allure
Pytest系列(3) – setup和teardown的詳細使用
Pytest系列(6) – conftest.py的詳細講解
Pytest系列(9) – 參數化@pytest.mark.parametrize
Pytest系列(10) – fixture 傳參數 request的詳細使用
Pytest系列(11)- 失敗重跑插件pytest-rerunfailures的詳細使用
Pytest系列(12)- 測試結果生成HTML報告插件之pytest-html的詳細使用
Pytest系列(13)- 重複執行用例插件之pytest-repeat的詳細使用
Pytest系列(14)- 配置文件pytest.ini的詳細使用
Pytest系列(15)- 多重校驗插件之pytest-assume的詳細使用
Pytest系列(16)- 分散式測試插件之pytest-xdist的詳細使用
Pytest系列(17)- pytest-xdist分散式測試的原理和流程
Pytest系列(18)- 超美測試報告插件之allure-pytest的基礎使用
Pytest系列(20)- allure的特性,@allure.step()、allure.attach的詳細使用
Pytest系列(21)- allure的特性,@allure.description()、@allure.title()的詳細使用
Pytest系列(22)- allure的特性,@allure.link()、@allure.issue()、@allure.testcase()的詳細使用
Pytest系列(23)- allure 打標記之 @allure.epic()、@allure.feature()、@allure.story() 的詳細使用
Pytest系列(25)- @allure.severity 標記用例級別
Pytest系列(26)- 清空 allure 歷史報告記錄
Pytest系列(28)- 參數化 parametrize + @allure.title() 動態生成標題
Pytest系列(29)- 詳解 allure.dynamic 動態生成功能
實戰小項目
Docker + Jenkins + Gitlab + Pytest + Allure 介面自動化測試之持續集成實戰終極教程
UI 自動化
Selenium系列(二) – 詳細解讀針對瀏覽器的操作Selenium系列(一) – 詳細解讀8種元素定位方式
Selenium系列(三) – 詳細解讀針對元素常見的簡單操作
Selenium系列(六) – 詳細解讀強制等待、隱式等待、顯式等待的區別和源碼解讀
Selenium系列(八) – 截取完整頁面和截取指定元素並保存為圖片
Selenium系列(九) – 針對alert窗口的處理(警告框、確認框、對話框)和源碼解讀
Selenium系列(十) – 針對Select下拉框的操作和源碼解讀
Selenium系列(十一) – 針對兩種上傳文件方式的實現方案
Selenium系列(十二) – 自動化必備知識之CSS選擇器的詳細使用
Selenium系列(十三) – 自動化必備知識之Xpath的詳細使用
Selenium系列(十四) – Web UI 自動化基礎實戰(1)
Selenium系列(十五) – Web UI 自動化基礎實戰(2)
Selenium系列(十六) – Web UI 自動化基礎實戰(3)
Selenium系列(十七) – Web UI 自動化基礎實戰(4)
Selenium系列(十八) – Web UI 自動化基礎實戰(5)
Selenium系列(十九) – Web UI 自動化基礎實戰(6)
Selenium系列(二十) – PageObject模式的詳細介紹
Selenium系列(21) – Cookie操作和源碼解讀
Selenium系列(22) – 通過selenium控制瀏覽器滾動條的幾種方式
Selenium常見報錯問題(1)- 先來認識下selenium常見異常類
Selenium常見報錯問題(2)- 解決和分析StaleElementReferenceException異常
Selenium常見報錯問題(3)- 解決和分析NoSuchElementException
APP 自動化
Appium自動化(2) – appium環境安裝常見問題的解決方案
Appium自動化(4) – Appium Desired Capabilities 參數詳解
Appium自動化(5) – 如何獲取android app 的Activity 和 Package
Appium自動化(6) – 控制項定位工具之uiautomatorviewer 的詳細介紹
Appium自動化(7) – 控制項定位工具之Appium 的 Inspector
Appium自動化(9) – appium元素定位的快速入門
Appium自動化(10) – appium高級元素定位方式之 UI Automator API 的詳解
Appium自動化(11) – 詳解 Applications 類里的方法和源碼解析
Appium自動化(12) – 詳解 HardwareActions 類里的方法和源碼分析
Appium自動化(13) – 詳解 Keyboard 類里的方法和源碼分析
Appium自動化(14) – 詳解 ActionHelpers 類里的方法和源碼分析
Appium自動化(15) – 針對 webview 進行自動化測試
Appium自動化(16) – 使用手機瀏覽器進行自動化測試
常見問題解決方案
Appium問題解決方案(1)- 設置unicodeKeyboard: True運行腳本後,手機輸入時無法調出軟鍵盤
Appium問題解決方案(3)- java.lang.IllegalStateException: UiAutomation not connected!
Appium問題解決方案(2)- AttributeError:module ‘appium.webdriver’ has no attribute ‘Remote’
Appium問題解決方案(4)- Error while obtaining UI hierarchy XML file: com.android.ddmlib.SyncException
Appium問題解決方案(6)- Java堆棧錯誤:java.lag.ClassNotFoundException:org.eclipse.swt.widets.Control
Appium問題解決方案(9)- Original error: Failed to launch Appium Settings app: Condition unmet after 5090 ms
Appium問題解決方案(10)- Original error: Swipe did not complete successfully
RobotFramework
Robot Framework(6)- BuiltIn 測試庫常用的關鍵字列表
Robot Framework(7)- DateTime 測試庫常用的關鍵字列表
Robot Framework(8)- Collections 測試庫常用的關鍵字列表
Robot Framework(12)- 詳細解讀 RF 的變數和常量
Robot Framework(13)- RF 循環的詳細使用
Robot Framework(14)- Variables 表的詳細使用和具體例子
Flask
Flask(2)- 第一個 Flask Application
常見問題解決方案
Flask – 解決 app.run() 添加 host、port、debug 參數後運行不生效的問題
FastAPI