第一、二單元 Web自動化測試進階
一.框架定義
????框架就是一個框子,指其約束性,也是一個架子,指其支撐性,是一個基本概念上的結(jié)構(gòu),用于去解決或者處理復(fù)雜的問題
二.為什么使用框架
????1)自己從頭實現(xiàn)太復(fù)雜
????2)使用框架能夠更專注于業(yè)務(wù)邏輯,加快開發(fā)速度
????3)框架的使用能夠處理更多細節(jié)問題
????4)使用人數(shù)多,穩(wěn)定性,擴展性好
三.selenium工作原理
四.selenium環(huán)境搭建
五.selenium對瀏覽器操作
? ? 1.庫的導入
? ? 2.創(chuàng)建瀏覽器對象
? ? 3.瀏覽器尺寸相關(guān)操作
? ? 4.瀏覽器位置相關(guān)操作
? ? 5.瀏覽器的關(guān)閉操作
? ? 6.頁面請求操作
六.selenium獲取斷言信息
? ? 1.斷言:斷言是編程術(shù)語,表示為一些布爾表達式,程序員相信在程序中的某個特定點該表達式值為真,可以在任何時候啟用和禁用斷言驗證,因此可以在測試時啟用斷言而在部署時禁用斷言。
? ? 2.獲取斷言信息的操作
? ??????current_url 獲取當前訪問頁面url
????????title 獲取當前瀏覽器標題
????????page_source 獲取網(wǎng)頁源碼
? ??????get_screenshot_as_png() 保存圖片
? ??????get_screenshot_as_file(file) 直接保存
七.selenium八大元素定位
八.元素的操作
????1)點擊和輸入
????點擊操作---------->element.click()
????清空/輸入操作:
????element.clear()---------------------->清空輸入框
????element.send_keys(data)-------->輸入數(shù)據(jù)
? ? 2)提交操作
? ? element.submit()
九.多標簽之間的切換
? ? 1.獲取所有窗口的句柄
? ? 2.通過窗口的句柄進入窗口
十. 多表單切換
????在網(wǎng)頁中,表單嵌套是很常見的情況,尤其是在登錄的場景
十一. 什么是多表單
實際上就是使用iframe/frame,引用了其他頁面的鏈接,真正的頁面數(shù)據(jù)并沒有出現(xiàn)在當前源碼中,但是在瀏覽器中我們看到,簡單理解可以使頁面中開了一個窗口顯示另一個頁面
十二.處理方法
十三.彈出框操作
? ? 1.進入到彈出框
? ? 2.接收警告
? ? 3.解散警告
十四.鼠標和鍵盤操作
? ? 1.鼠標操作
? ? ? ? 1)導入動作鏈類
? ? ? ? 2)鼠標右擊
? ? ? ? 3)鍵盤操作:鍵盤操作一般使用Keys類
十五.瀏覽器等待
????1)為什么進行等待
? ? ? ? 1.網(wǎng)速慢
? ? ? ? 2.網(wǎng)站內(nèi)容過多
? ? ? ? 3.如果不進行等待而直接定位元素,可能會拋出異常
第三單元po模型
一.po模型介紹
在自動化中,Selenium自動化測試中有一個名字經(jīng)常被提及PageObject(思想與面向?qū)ο蟮奶卣飨嗤?,通常PO模型可以大大提高測試用例的維護效率
二.PageObject設(shè)計模式
三.po的核心要素
四.非po實現(xiàn)
五.po實現(xiàn)
六.po模型的優(yōu)點