前面我們發布了一個基於selenium + pytest 的框架,現在已經完全將項目代碼和依賴分離開了,也進行了一些改動,現在重新命名為lazyTest,並且將其作為第三方的庫發布到了Pypi;
框架介紹
這里先聲明一下我習慣叫它是一個框架,但是我們只是做了對selenium的二次封裝,引用pytest做測試,所以實際上lazyTest只能算是一個庫包,引用之后可以更改簡單的幫我們完成對webUI的自動化測試;
GitHub地址:https://github.com/xingheyang/lazyTest.git
它的優點:
1.對selenium進行了在次封裝,實現了定位元素與代碼完全分離;
2.快速的創建項目,以及層次分明個的項目結構;
3.完全兼容pytest,可以正常引用所有的pytest的插件;
4.使用的allure測試報告,報告更美觀,清晰,用例記錄更加詳細;
下載並使用
1.通過pip下載
pip install lazyTest
下載后驗證
D:\Python_Script\UIAutoProject\project>lazy -v
version 1.1.0 # 正常顯示版本號即可
創建項目
D:\Python_Script\UIAutoProject\project>lazy --project demo create dir:demo create dir:demo\page create dir:demo\service create dir:demo\case create dir:demo\main create dir:demo\result create dir:demo\result\log create dir:demo\result\report create dir:demo\result\screenshot create dir:demo\resources create dir:demo\resources\elementSource create file:demo\__init__.py create file:demo\case\conftest.py create file:demo\pytest.ini create file:demo\main\main.py
項目結構
│ pytest.ini # pytest相關的配置 │ __init__.py │ ├─case # 存放測試用例 │ conftest.py # pytest的插件存放文件 │ ├─main │ main.py # 主入口文件 │ ├─page # 存放封裝后的頁面元素 ├─resources # 資源目錄 │ └─elementSource # 存放頁面元素定位的值,一個頁面對應一個元素文件 ├─result # 存放測試結果 │ ├─log # 日志 │ ├─report # 測試報告 │ └─screenshot # 失敗截圖 └─service # 存放業務流程