UI自動化測試底層原理

2022-07-02 13:18:12 字數 1609 閱讀 9577

底層原理如下:

1.在自動化測試過程中,存在三部分元件:客戶端指令碼+驅動+瀏覽器終端。

2.驅動檔案,以geckodriver.exe為例,這個可執行的驅動檔案啟動後,相當於乙個暴露了一系列介面的伺服器,監聽某一埠,例如:89890。

3.客戶端的操作(訪問頁面,定位元素,輸入資料,點選按鈕等)都是封裝成了介面請求(eg:/session/xx/yy),然後提交到驅動伺服器。

4.驅動伺服器接收到客戶端的請求後,再跟終端瀏覽器互動。

5.終端瀏覽器做出相應操作。

下圖描述了整個互動過程:

以定位元素為例,定位搜尋框,我們來看底下這行**在執行的時候底層到底經歷了些什麼:

實際,底層請求時,每個請求會被封裝為乙個command,然後根據不同的commannd封裝得到不同的httprequest物件:

拿到此介面位址封裝為乙個httprequest請求。

client.execute(httprequest,true),執行介面呼叫:

//建立火狐驅動物件

webdriver driver = new firefoxdriver();

當上面這行**執行完,可以發現eclipse的控制台顯示了如下資訊:

1531911173760    geckodriver    info    geckodriver 0.19.0

1531911173772 geckodriver info listening on 127.0.0.1:21984

說明此驅動伺服器成功啟動了,並且監聽了本機的21984埠,等待客戶端發起請求,並處理。

**於:

UI自動化測試隨筆

昨天給開發的同事講我們正在做的自動化測試,同事問了句 為什麼api的測試不需要寫 了,而ui的測試還需要寫那麼多 呢?能不寫 麼?目前我們的自動化測試的現狀 目前主要覆蓋兩個部分 api的測試和ui的測試。對於api的測試經過框架的封裝,基本上只需要編寫乙個xml描述的test case就可以了,x...

UI自動化測試框架

python selenium unittest ddt htmlreport分布式資料驅動自動化測試框架結構 1 business 公共業務模組,如登入模組,可以把登入模組進行封裝供呼叫 login business.py from page object.common page.login pa...

UI自動化測試 介面測試等自動化測試策略

今天跟大家介紹ui測試 介面測試 單元測試主要內容,以及每種測試花費時間討論。ui測試 selenium ui測試是最接近軟體真實使用者使用行為的測試型別。通常是模擬真實使用者使用軟體的行為,即模擬使用者在軟體介面上的各種操作,並驗證這些操作對應的結果是否正確。介面測試 api測試 api測試,主要...