前言
- 這其實是將自己寫的文章進行一個總結分類,並不代表最佳學習路線
- 會不斷更新這篇文章...沒連結的文章正在編寫ing...會不會哪天我的這個目錄就出現在培訓機構的目錄上了...
- 目前實戰比較少(要是有多點實戰,我就開培訓了哈哈哈)
Python
基礎
資料型別相關
Python - 基礎資料型別 Number 數字、bool 布林、complex 複數
Python - r'', b'', u'', f'' 的含義
Python - 字串 encode
迴圈相關
函式相關
Python - 函式形參之必填引數、預設引數、可變引數、關鍵字引數的詳細使用
Python - 基本資料處理函式round()、int()、floor()、ceil()
Python - 3.8 新特性之僅位置引數 & 僅關鍵字引數
Python - bytes()
物件導向程式設計
Python - 物件導向程式設計 - 什麼是 Python 類、類物件、例項物件Python - 物件導向程式設計 - 什麼是物件和類
Python - 物件導向程式設計 - __init__() 構造方法
Python - 物件導向程式設計 - __del__() 析構方法
Python - 物件導向程式設計 - 類變數、例項變數/類屬性、例項屬性
Python - 物件導向程式設計 - 例項方法、靜態方法、類方法
Python - 物件導向程式設計 - __repr__()
Python - 物件導向程式設計 - 公共屬性、保護屬性、私有屬性
Python - 物件導向程式設計 - 使用 super() 的一些注意事項
Python - 物件導向程式設計 - MRO 方法搜尋順序
Python - 物件導向程式設計 - __call__()
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(11)- 使用者關鍵字的詳解
Robot Framework(12)- 詳細解讀 RF 的變數和常量
Robot Framework(13)- RF 迴圈的詳細使用
Robot Framework(14)- Variables 表的詳細使用和具體例子
Flask
Flask(2)- 第一個 Flask Application
常見問題解決方案
Flask - 解決 app.run() 新增 host、port、debug 引數後執行不生效的問題
FastAPI