1. 程式人生 > 其它 >位元組7年經驗分享,如何從0開始搭建公司自動化測試框架?

位元組7年經驗分享,如何從0開始搭建公司自動化測試框架?

 搭建的自動化測試框架要包括API測試UI測試APP測試三類。以上三類其實可以簡化為兩類,那就是:

1)介面自動化測試框架搭建
2)UI自動化測試框架搭建

沒問題,安排,且是手把手教你如何搭建以上兩類自動化測試框架。


刷到這個問題的測試人員,可能有一部分還是從事"手工測試"的,或是一些是自學測試剛入門。為了讓這類讀者也能有獲得感,所以我將問題拆分下,分為下面4個部分:

1、為什麼要搭建自動化測試框架
2、簡介如何搭建API介面測試框架
3、簡介如何搭建UI自動化測試框架
4、自動化測試框架電子書推薦

好,抓好扶手,接下來我們開始正式介紹了。


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

測試如果按照是否手工劃分,可以分為“手工測試”和“自動化測試”。

“手工測試”也就是用人力來進行功能測試。相比自動化測試而言執行效率慢,可以進行探索性測試和發散性測試。

“自動化測試”主要是通過所開發的軟體測試工具、指令碼等來替代人工進行功能測試。相比“手工測試”,不僅能解放人力,且具有良好的可操作性、可重複性和高效率等特點。

具體來說"自動化測試"的優勢如下:

(1)自動化測試具有一致性和重複性的特點,而且測試更客觀,提高了軟體測試的準確度、精確度和可信任度。

(2)自動化測試可以將任務自動化,能夠解放人力去做更重要的工作。

(3)自動化測試只需要部署好相應的場景,如高度複雜使用場景、海量資料互動、動態響應請求等,測試就可以在無人值守的狀態下自動進行,並對測試結果進行分析反饋;手工測試很難實現複雜的測試。

(4)自動化測試可以模擬複雜的測試場景完成人工無法完成的測試,如負載測試、壓力測試等。

(5)軟體版本更新迭代後需要進行迴歸測試,自動化測試有助於建立持續整合環境,使用新構建的測試環境快速進行自動化測試

可見,自動化測試優勢非常多,所以最近幾年企業瘋狂招聘自動化測試人員。高薪的自動化測試不斷的湧入,逐步替代低薪的手工測試,直接後果就是測試最近幾年的平均薪資一路上漲。

​△ 截圖來源於職友集,顯示最近6年測試薪資一路上漲

自動化測試具體實施流程如下圖所示:

自動化測試實施流程圖


從上圖可以看出,要實施自動化測試是需要搭建測試環境的,也就是要搭建測試框架。

這就是為什麼我們要學習"介面自動化測試框架搭建"和"Ui自動化測試框架搭建"的根本原因。
點選領取軟體測試免費學習資源

二、簡介如何搭建API介面測試框架

在當前企業實際測試技能應用中,功能測試和介面測試應用最廣泛。但相比功能測試,介面測試缺口卻非常大。且介面測試在測試領域地位非常高

,是軟體測試工程師初級和中級分界線。

所以我們先來將介面測試框架的搭建,搭建步驟列出如下:

1)選擇開發語言
2)選擇Pytest作為測試框架
3)設定測試報告
4)選擇程式碼倉庫
5)部署持續整合方案
附:兩套詳細學習視訊推薦

步驟步驟講完之後,我們開始詳細闡述每一步該如何操作(盡力能讓你照著步驟搭建出來)。

1、選擇一門語言

語言我們選擇Python。因為相比Java,更容易入門。

python是一門簡單易學,容易理解的計算機程式語言。不僅有很多的學習書籍,還有很多的學習視訊。Python也早已經成為tiobe語言的No1。

2、選擇PyTest作為測試框架

PyTest是一個非常成熟的全功能的Python測試框架。官方文件詳細介紹了它的特點

· 對失敗斷言語句會進行詳細資訊展示(無需記住self.assert*名稱) · 自動發現測試模組和功能 · 非常方便管理小型或引數化測試專案 · 可以開箱即用執行單元測試和測試套件 · 豐富的外掛架構,超過 800 多個外部外掛和蓬勃發展的社群

pytest框架使用5步驟

#PyTest目錄結構 apiTestFramework # 專案名稱 ├── api # 定義封裝被測系統的介面 ├── script # 定義測試用例指令碼 ├── data # 存放測試資料檔案 ├── report # 存放生成的測試報告 ├── common # 存放通用工具類 ├── config.py # 定義專案的配置資訊 └── pytest.ini # pytest配置檔案

3. 測試報告

執行完測試用例後,可以以HTML(網頁)方式將執行結果生成報告。我們選擇pytest-html。它是PyTest框架生成HTML測試報告的外掛。使用方便。

第一步安裝:pip install pytest-html

第二步修改配置:addopts = -s --html=report/report.html

輕鬆搞定。

4. 程式碼倉庫

程式碼管理肯定是首選git嘍。Git 分散式版本控制系統,實現版本控制和多人協同。

# 常見的程式碼託管平臺: Github 國外的基於git實現線上程式碼託管的倉庫(企業版收費) 官網:https://github.com/ Gitee 碼雲,是開源中國免費提供(企業版收費) 官網:https://gitee.com/ Gitlab 類似Github,一般用於企業內部搭建git私服

5. 持續整合方案

​Jenkins是基於Java開發的一種開源、跨平臺的持續整合工具。他能夠持續自動構建/測試軟體專案,實現監控定時執行的任務。

我們簡單來說明一下jenkins的核心構建步驟。

1) 搭建Jenkins環境

​2) 建立任務之後設定原始碼管理

3) 輸入構建命名

4)設定定時構建

​5)設定測試報告路徑

​6)設定構建後傳送郵件

​7)構建並檢視結果

PS: 再詳細的文字也不如視訊來的生動,接下來推薦兩個介面測試框架相關的詳細視訊:文末

點選領取軟體測試免費學習資源

三、手把手教:如何搭建UI自動化測試框架

UI自動化測試框架是有很多的。我們以pytest+selenium+allure+PO模式為例子給大家簡要說明一下。搭建步驟有下面幾步:

1)工具環境
2)依賴包
3)工程目錄
4)指令碼書寫步驟

1、工具環境

a) Python直譯器 b) Pycharm編碼工具 c) Web端: d) 瀏覽器 e) 瀏覽器驅動程式

2. 依賴包

a) Selenium b) pytest c) pytest-html

3. 工程目錄

a) base 基類python package b) page PO封裝python package c) case 測試用例python package d) data 資料檔案Directory e) report 測試報告Directory f) log 日誌檔案Directory g) screenshot 截圖檔案Directory h) config.py 專案配置資訊檔案 i) utils.py 工具類檔案

4. 指令碼書寫步驟

a ) 初始化程式碼

​b ) 一個測試用例指令碼編寫過程

c ) 引入資料驅動

d ) 引入日誌

e ) 生成測試報告


PS: 若沒有基礎知識鋪墊,再詳細的文字也可能會讓人不知如何下手,接下來推薦多個UI自動化測試框架視訊,按照下列視訊搭建即可。

資源分享

最後感謝每一個認真閱讀我文章的人,看著粉絲一路的上漲和關注,禮尚往來總是要有的,雖然不是什麼很值錢的東西,如果你用得到的話可以直接拿走

這些資料,對於做【軟體測試】的朋友來說應該是最全面最完整的備戰倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!凡事要趁早,特別是技術行業,一定要提升技術功底。希望對大家有所幫助…….

點選領取軟體測試免費學習資源