Selnium + POM + Pytest:學習記錄
簡介
selenium POM Pytest 結合,通過Pytest fixture 來傳遞Driver 保證一個測試用例[1] :driver[1] 學習記錄
插件包
selenium: 操作瀏覽器
pytest: drvier傳遞,收集/執行測試用例
pytest-xdist: 分佈式執行測試用例
pytest-html: 收集測試結果-測試報告
webdriver_manager: 瀏覽器驅動管理,它會自動去下載合適的瀏覽器Driver
測試資源
被測應用: 博客後台
其實是一個只有DRF 個人博客實現的後台,用的就是Django Admin 原生後台
- 下載/克隆:
git clone -b drf-blog //gitee.com/zy7y/blog.git
- 本地啟動:
1. python -m venv venv # 創建虛擬環境
2. venv\Scripts\activate # windows 啟動虛擬環境
3. pip install -r requirements.txt # 安裝依賴包
4. Django項目配置
1. python manage.py makemigrations blog
2. python manage.py migrate
3. python manage.py createsuperuser --email [email protected] --username admin
4. python manage.py runserver
瀏覽器版本: Google Chrome 版本 92.0.4515.107
目錄結構
目錄結構生成: tree /f
├─Config # 配置文件
│ │ __init__.py
│ └─ config.py
│
├─Pages # 頁面對象
│ │ __init__.py
│ │ BasePage.py
│ │ HomePage.py
│ └─ LoginPage.py
│
├─Reports # 測試報告
│ │ report.html
│ │
│ └─ assets
│ style.css
│
└─Tests # 測試文件
│ │ __init__.py
│ │ conftest.py
│ │ test_base.py
│ │ test_home.py
│ └─ test_login.py
│ .gitignore # git 忽略文件
│ main.py # 啟動文件
│ pytest.ini # pytest配置文件
│ readme.md # 項目說明
└─ requirements.txt # 依賴庫
使用
git clone //gitee.com/zy7y/SelniumPOM
python -m venv venv
- 激活venv:
venv\Scripts\activate
- 運行: 執行pytest 或者 運行main.py 文件