解放雙手——你知道軟體測試階段都有哪些主流自動化測試技術嗎?

博為峰網校發表於2019-09-24
當前,軟體產品整體的開發測試節奏正在不斷的加快。如何快速響應市場需求,在保障產品質量的同時提高軟體研發效率?是擺在開發、測試人員面前的一大難題。
對軟體測試人員來說,提高自動化測試的能力和效率,是應對這一難題的途徑之一。透過調研學習,我們對主流自動化測試技術進行簡要對比。按照人工介入程度區分,自動化測試技術主要分為兩大類別:流量複製技術和場景測試技術。
解放雙手——你知道軟體測試階段都有哪些主流自動化測試技術嗎?
1、流量複製技術
流量複製技術的原理是:複製線上Server的請求資料包(比如HTTP流量、TCP流量、鏈路層流量等),修改流量包頭部資訊,傳送給測試伺服器,達到欺騙測試伺服器程式的目的,從而為欺騙測試伺服器上面的上層應用打下基礎。  
技術發展現狀:目前有各種開源的軟體支援流量複製,比如Gor、TCPCopy等。其中,Gor是一款Golang語言編寫的簡單的http流量複製開源工具,它的工作流程是監聽伺服器捕捉http流量,把捕捉到的流量傳送到重現伺服器上或者儲存到檔案中,重現伺服器再繼續把流量傳送到一個指定的ip地址:
Gor工作流程圖
TCPCopy是國內各大網際網路公司廣泛應用XCopy系列工具之一,XCopy是由網易主導,多家公司參與開發的具有線上Server流量複製功能的一系列開源軟體的總稱。XCopy系列包括TCPCopy、UDPCopy、MysqlCopy等開源軟體(這些軟體都整合在tcpcopy開源專案內)。TCPCopy是一種請求複製(複製基於TCP的packets)工具,透過複製線上資料包,修改TCP/IP頭部資訊,傳送給測試伺服器。  
流量複製技術具有技術成熟,專案開源,對使用者透明,無需使用者承擔額外的研發工作僅需要在生產和測試環境安裝相應的軟體等特點。測試流程真實模擬生產情況,測試路徑真實,能放大和縮小流量,實現仿生產條件下的模擬效能測試。流量複製技術應用在對後端服務進行測試,適合人機介面互動少、後臺邏輯相對單一的系統進行自動化測試,比如網捷貸、搜尋引擎等相關產品。
2、場景測試技術
場景測試技術的原理是:按照真實業務場景劃分,透過程式錄制使用者的操作行為,轉化為指令碼,然後在被測環境回放指令碼進行測試。
技術發展現狀:目前有較為成熟的軟體支援,比如:QTP、Watir、Selenium等,在各行業應用較為廣泛。  
場景測試技術具有場景按需定製,測試針對性強,定位重現問題較為便捷的特點。適合前端測試,特別是有人機互動、有流程、步驟和環節概念的應用程式和桌面程式,能精細化覆蓋所有業務分支流程,實現仿使用者操作行為的測試。  
針對流量複製技術和場景測試技術所採用的自動化測試軟體,我們進行了對比分析,分析結果參見下表:
主流自動化測試軟體優劣對比

從上述分析可以看到,流量複製技術和場景測試技術實現原理不同,在市場上都具備相對成熟的軟體支援,在應用中各有優勢,適合於不同型別的測試應用場景。在實際產品的測試過程中,我們應根據軟體系統的不同特徵和場景,選用適合的自動化測試技術,以期提高測試效率和質量。


加我VX:ww-51testing   回覆關鍵詞“測試”領取限量軟體測試學習資料哦~~

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2658124/,如需轉載,請註明出處,否則將追究法律責任。

相關文章