python自動化測試框架選擇

2021-09-19 17:31:57 字數 2252 閱讀 1883

框架(framework)是整個或部分系統的可重用設計,

框架是用來解決**的組織及執行控制問題的。

在我們編寫自動化指令碼的時候,經常需要讀取配置檔案,讀取資料檔案,傳送請求,記錄日誌,連線並對比資料庫資料。每個指令碼裡都重寫一遍各種方法不僅工作量大而且易錯。所以我們需要把公共的方法提取出來,封裝成單獨的模組,放到公用方法包裡。另外配置檔案,資料檔案,日誌等我們也需要分類存到不同的資料夾下。這種對公共方法的封裝及對指令碼及配置檔案怎麼組織的設計就叫做框架。

同時,一般框架除了完成對**及配置檔案的組織之外還要提供執行的控制功能。比如批量執行,分模組執行,生成報告,異常處理等等。

總結為以下3點:

乙個完整的測試指令碼(用例)一般包含以下幾個步驟:

而測試框架一般還要完成用例載入,批量執行,異常控制,結果輸出等功能。基礎的測試框架一般只提供執行控制方面的功能。

pytest是一款強大的python測試工具,它具有易於上手,功能強大,第三方外掛程式豐富,效率高,可擴充套件性好,相容性強等特點,實際上,越來越多的專案開始放棄unittest和nose以及robot framework ,轉而使用pytest,比如mozilla和dropbox.因為pytest可以提供更豐富功能,包括assert重寫,第三方外掛程式,以及其他測試工具無法比擬的fixture模型。

pytest可以自動找到測試用例執行,並匯報測試結果。它有豐富的基礎庫,可以大幅度提高使用者編寫測試用例的效率。它具備非常強的可擴充套件性,使用者可以自己編寫外掛程式,或者安裝第三方外掛程式。pytest可以很方便地與其他工具一起使用,比如持續整合、web自動化測試等。

pytest 也具有 robot framework 所聞名的驗收測試能力。pytest 最好的特性之一是,它提供了測試用例的詳細失敗資訊,使開發者可以快速準確地改正問題。它相容最新版本的 python,還相容 unittest、doctest 和 nose,開箱即用。pytest 還有各種可用外掛程式來給現有測試技術和測試用例增加更多功能和多樣性。事實上,在其活躍社群中有 300 多個可用的外掛程式。該平台設計用於編寫更簡單,錯誤率更小的**。你可以將 pytest 與諸如 selenium 和 splinter 之類的圖形使用者介面一起使用,來使測試工作更輕鬆

pytest優於其他測試框架的地方:

pytest+allure報告

概述頁顯示的測試引數列表整體測試執行統計資料

缺陷頁面提供的測試執行過程中發現的缺陷的詳細清單。我們區分對應於失敗測試的產品缺陷和對應於破壞測試的測試缺陷。

測試套頁面顯示方面統計測試套。您可以檢視每個測試套件的測試統計資訊以及每個測試用例的詳細資訊。

行為頁面來自於測試資料bdd。您可以輕鬆檢視哪些功能和故事存在問題。

圖表可幫助您直觀地估算測試結果

時間軸頁面顯示在哪個時間點每個測試用例開始執行,並且它執行了多長時間

優點

缺點

**

* settings **

*library requestslibrary

library collections

*** test cases **

*test_get_event_list # 查詢發布會(get請求)

#斷言結果

$ get from dictionary $ message

should be equal $ success

$ get from dictionary $ status

$ evaluate int

(200

) should be equal $ $

結果:不考慮,沒人願意這麼寫介面用例。

自動化測試框架

可設計為五層 一 測試用例層 主要存放用例的指令碼,分為主指令碼和子指令碼。主指令碼用來控制各個子指令碼,實現指令碼間的資料傳遞。子指令碼是實現各個功能點的指令碼,同時也會提取出一些共用的方法,一般放在提取層中。主指令碼中可使用資料驅動來控制指令碼實現各種場景的流程,如silktest的test s...

python自動化測試框架nose

python除了unittest,還有一款更快捷的nose,nose可以說是對unittest的一種簡化吧 但是他不需要unittest那種必須有固有的格式,他只需要檔案,類名,方法名等含有test就可以 unittest是需要手動來寫discover函式來遍歷用例的 官網位址 舉例說明,比如我有乙...

python 自動化測試框架概述

怎麼樣的框架?資料驅動 資料與 分離 如何做到資料和 的分離?基礎資料 環境資料 資料庫資訊 配置資訊 都放在配置檔案裡 場景資料 測試用例都放在excel管理 乙個介面對應乙個.py檔案 測試用例包括了幾列?解釋 每一行對應一條測試用例 title 用例的描述,說明測試點 後面的幾列是api介面測...