Web自動化測試相關知識點(僅限於補充)

2021-07-14 22:49:58 字數 2215 閱讀 8111

1 上傳按鈕是input屬性

先定位該按鈕,再使用sendkeys()方法鍵入檔案的絕對路徑即可;

2 上傳按鈕是flash型別

借助autoit工具進行檔案上傳;

具體參考蟲師的部落格,我在執行程式時出現問題,一直沒解決。。。

draganddrop(source, target);是將source元素拖拽到target元素的左側元素的位置上,而不是target元素位置上。

1 確定問題是否能夠復現

2 單步除錯,定位哪一行**問題出錯

3 自行思考,試**決

4 上網查閱資料

5 請教專業人士

原因在於瀏覽器還未渲染出元素,selenium操作已經進行;

可使用隱式等待方法解決。

舉例來說,需要測試的情景為:借款還款流程。

如果想完成此情景,在我們公司大致需要如下操作:(事先已經搭建起本地測試環境)

1、前端進入借款頁面,選擇乙個借款產品並輸入借款金額,發起借款請求;(此時狀態為借款申請中)

2、本地需要執行乙個由開發寫好的.bat程式(其實就是開啟乙個批准借款請求的服務),並在mysql裡修改相應表的相應字段值;(此時狀態變更為放款中)

3、等待一段時間(可能是5min,也可能是30min,這個不太有準)後會放款給客戶;(此時前端狀態變為放款成功)

4、假設借款時間為60天,需要將電腦系統時間調整為60天以後;

5、前端進入還款的頁面,頁面會顯示出需還款的金額(本金和60天的利息),使用者輸入金額並還款;(此時狀態為還款中)

6、本地需要執行另乙個或多個開發寫好的.bat程式(其實就是開啟掃瞄使用者還款的乙個服務),可能後台還需要一些別的操作;

7、等待一段時間(同樣不太有準)後前端顯示的狀態才能變為還款成功。

需要前後臺結合測試時(甚至中途修改資料庫、啟動某些服務等),例如上面的測試流程是否適用自動化測試?

1、如果適用,類似上面操作執行自動化測試有什麼思路?需要解決好哪些問題?

2、如果不適用,那麼哪種型別的情景才是適用的?是不是說明自動化測試本身有很大侷限性?畢竟現在的系統都很複雜,只操作前台**就能完成測試的情況似乎太少了。

解答:一般需要我們能把我們的測試工作解耦:

第一、測試的解耦:

比如前面課程中用例設計中,我們需要把我們的用例分成:測試準備、測試主體、以及測試退出,還有些其他的比如測試資料準備等工作;

第二、技術的解耦:

自動化技術其實很寬泛,web ui自動化只是其中的乙個子領域,可以模擬為多種**,我們要根據使用場景來選擇最合適的**;

下面我們來解耦一下:

第一、測試的解耦:

首先要確定你的測試主體,其實是兩個測試主體

一. 借款

二. 還款

借款流程中:

1. 發起借款(web端、可以自動化)

2. 批准借款(根據你的描述,好像沒有ui介面,這個也沒問題,只是在後續呼叫順序上用測試框架編寫依賴即可)

3. 等待(這個過程需要解決,要加速,可以跟你們的開發討論,一般自動化我們需要在較短的時間內結束;我們在開發自動化**時候,有時也會遇到此類問題,需要乙個個解決),加快等待過程只是為了我們更快的校驗,更快的獲知我們的結果;

4. 校驗結果正確(web端,可以自動化)

還款流程:

資料準備:需要準備已經到還款日的借款資料;

1. 發起還款(web端、可以自動化)

2. 啟動指令碼,加速還款過程;要加速這個過程來完成校驗;

這樣來看,其實我們的兩個主題測試並不太複雜,不過你可能會想我在回歸測試時想把這些流程貫穿起來, 一起完成;

那我們來繼續,接下來就是設計到我們怎麼把這些流程貫穿起來,這裡需要我們去用到合理的技術手段了;

第二、技術的解耦

需要解決的技術問題,主要是這兩塊:

1. 自動化整個過程(你這邊主要是web自動化和bat等指令碼,或者還有介面的呼叫)

2. 使用測試框架,確定好用例執行的順序;

3. 加速一些等待過程(比如快取重新整理等),盡快得到結果進行校驗;

我們要明白自動化的含義,自動化是根據一定的規則去幫我們完成手工的事情,而且自動化的手段是多樣化的。

關於web自動化的適用場景:

在我們的很多專案組,web自動化一般用於web系統的回歸測試,且納入到持續整合裡面;不過我們不單單適用ui自動化,還會有分層的測試體系,比如單元測試、介面測試等來完成立體的測試;每種自動化有他適用的範圍, 不過我們一般web系統進行功能測試時,採用web ui自動化是解放我們勞動力是比較好的選擇;

web自動化知識點 02

webdriver元素定位 一 id定位 說明 html規定id屬性在整個html中必須是唯一的,id定位是通過元素的id屬性來定位元素 前提 該元素存在屬性 id定位元素的方法 find element by id id定位元素的實現步驟 1 匯入selenium包 from selenium i...

自動化測試 web自動化測試

自動化 由機器裝置代替人為完成制定目標的過程 優點 提高工作效率 減少勞動力 產品規格同一標準 批量生產 自動化測試 讓程式代替人為去驗證程式功能的過程,即在預設條件下執行程式系統 流程確定 搭建自動化框架 編寫測試用例,將其轉化為soupui 介面 自動化測試指令碼 執行自動化測試指令碼 輸出執行...

web自動化測試

1.環境搭建 win10 64bit selenium2.53.6版本 安裝方法 pip install selenium 2.53.6 瀏覽器搭載三個 chrome 49版本 driver2.22 ie 11版本 driver2.5 firefox 44版本 在pycharm中關聯電腦本身安裝的工...