為什麼要搭建自動化測試框架

2022-08-31 21:09:09 字數 968 閱讀 7168

和一般的軟體專案一樣,自動化測試框架的開發是由自動化測試需求決定的,這個需求包括:

一、自動化測試更便於實施

二、處理自動化測試指令碼本身的存在的問題,如異常處理和場景恢復

三、彌補測試指令碼本身的不足或是特殊測試需求

四、測試易於維護

自動化測試過程包括三個要素:輸入、輸出、預期結果與實際結果的比較。

輸入包括測試資料和測試步驟兩部分。測試資料可以直接與測試步驟一起直接寫在指令碼裡,也可以獨立於**,通過配置檔案或引數的方式傳遞到測試中。測試步驟是測試指令碼的主體,它依賴於軟體的行為。軟體輸入的隨意性使軟體行為難以確定,這大大提高了編寫測試指令碼的難度。軟體本身存在的缺陷或系統響應時間等問題都可能導致測試指令碼執行失敗。我們測試中無法考慮到指令碼執行過程中所有的異常情況,而這會導致測試指令碼執行的不穩定性,因此我們需要針對測試指令碼本身做異常處理。

輸出,並將其與預期結果比較是自動話測試的另乙個重點;相對於輸入對軟體的依賴,這個過程則是偏向於計算和比較,需要較高的編碼能力。在測試專案中,測試結果的獲取經常不像手工測試那麼容易,而且驗證規則比較複雜,有時乙個校驗點需要數十行甚至幾百行**才能完成。在自動化測試中,很多功能函式是通用的,且對於同乙個專案,經常需要重複做這相同的事情。這樣,設計一些公共函式對整個指令碼的開發工作和維護工作是大有裨益的,不僅可以大大減少編碼量,而且可以提高指令碼的正確性和可維護性。

因此我們可以通過測試框架

為我們做以下事情:

第一、處理指令碼中一些異常和錯誤處理工作;

第二、實現一些通用的功能,簡化指令碼開發的過程;

然而對於自動化測試,我們不能乙個指令碼乙個指令碼的去執行測試,而希望能夠自如的部署測試,比如我們選擇要執行的用例後,自動化測試框架能夠執行相應的用例並給出測試結果。

基於此,我們希望測試框架可以幫我們實現:

第三、根據需求驅動測試執行;

第四、測試場景恢復;

第五、測試結果輸出。

當然,我們的需求可能還不止這些,需要測試框架為我們做更多的事情。

原創 為什麼要自動化測試?

最近在做乙個專案,需要將原有的手工用例實現自動化。面對這項任務,回想起我剛進公司那會,部門的軟體測試基本都是自動化的,全部採用通訊領域測試語言ttcn實現,當時面臨的工作就是開始學習ttcn指令碼,繼而開始編寫自動化指令碼,全然沒有對自己問這麼個問題,為什麼要自動化測試?經過幾年的測試,對這個問題已...

自動化測試框架搭建思路

可以完美和unittest結合實現資料驅動 ddt安裝 pip insatll ddt ddt全稱為data driver test ddt的使用方式 ddt裝飾類,作用於申明當前類使用ddt資料驅動 data裝飾函式,作用是給函式傳值 unpack裝飾函式,作用是數解包 file data裝飾函式...

介面自動化測試框架搭建

不喜勿噴 utils中的db.py的封裝 import pymysql 1.連線資料庫 conn pymysql.connect host 伺服器位址 port 3306,user 使用者名稱 password 密碼 db 資料庫名 2.建立游標 cur conn.cursor pymysql.cu...