selenium_day_5
0.EC模塊presence_of_element_located(locator)
- locator: 定位器
- 數(shù)據(jù)類型,元組
- ("元素定位方式","對應(yīng)的定位方式值")
- 元素的定位方式: 8種
- "id","class name","partial link text"
- 對應(yīng)的定位方式值:
- id屬性值
- xpath/css表達式
- 元素的定位方式: 8種
- WebDriverWait(driver, 10).until(EC.presence_of_element_located(locator)) # 元素定位--單個元素
- WebDriverWait(driver, 10).until(EC.presence_of_all_elements_located(locator)) # 元素定位--單個元素
1.自動化測試用例編寫原則
- 一個腳本就是一個完整的場景
- 一個腳本只驗證一個功能點
- 腳本盡量只做正向邏輯驗證
- 正向邏輯≠正確數(shù)據(jù)
- 腳本之間不要產(chǎn)生關(guān)聯(lián),每個腳本都可以獨立運行
- 腳本只對驗證點進行驗證,不對腳本中每一步驟做驗證
2.POM模式
2.1什么是POM模式
pom模式是頁面自動化的一個常用的模式;Page Object Module頁面 對象 模型
2.2 POM總體思路
一切皆對象
- 把項目中的每一個頁面當做一個對象
- 把每個頁面分為三層
- 表現(xiàn)層
- 頁面上可見的所有元素
- 操作層
- 對頁面上所有可見元素的操作(點擊,清空,輸入)
- 業(yè)務(wù)層
- 對元素操作后所實現(xiàn)的功能
- 表現(xiàn)層
2.3 POM框架文件結(jié)構(gòu)
- 項目名稱
- common文件夾 --存放公共方法
-
base.py --對selenium做二次封裝(基礎(chǔ)類)
- 方法名稱一定--見名知意,注釋不能缺失
- 打開瀏覽器
- 打開網(wǎng)址
- 元素定位(單個/一組)
- 元素操作(點擊/輸入)
- 關(guān)閉瀏覽器
- 下拉菜單
- alert彈窗
- iframe
- 工具類
- operation_excel.py
- xxxx.py
-
base.py --對selenium做二次封裝(基礎(chǔ)類)
- page文件夾 --一個頁面就是一個.py文件
- 封裝頁面的表現(xiàn)層和操作層---繼承base.py
- login_page.py # 登錄頁面
- register_page.py # 注冊頁面
- script文件夾 -- 測試用例
- 封裝頁面的業(yè)務(wù)層(測試用例)
- 測試用例調(diào)用page文件夾中的類
- data存放測試數(shù)據(jù)
- report存放測試報告
- common文件夾 --存放公共方法
3.selenium ide(了解)
- 下載
- 下載 火狐瀏覽器的一個插件
- 菜單---->附加組件---->搜索selenium ide---->選第一個下載
- 錄制
- 打開selenium ide
- 創(chuàng)建新項目
- 打開已有項目
- 關(guān)閉selenium
- 記錄并創(chuàng)建新項目
- 在地址欄中輸入被測網(wǎng)址
- 點擊REC---REC圖標為紅色
- 操作被測網(wǎng)址
- 點擊停止記錄Pause
- 保存
- 打開selenium ide
- 回放
- 點擊運行當前測試用例/運行所有測試用例
- 將時間調(diào)到最慢
- 導(dǎo)出代碼
- 在測試用例上右鍵---->選擇Export
- 選擇語言---Python