1. 程式人生 > >介面測試----入門篇

介面測試----入門篇

介面測試理念

        什麼是介面測試

介面是指系統模組與模組或系統與系統間進行互動,一般我們用 的多的是HTTP協議的介面、WebService協議的介面,還有RPC(Remote Procedure Call Protocol)——遠端過程呼叫協議的介面。

不管是哪種介面,其本質就是傳送一個request,然後伺服器響應 後返回一個response,然後我們對response進行分析,這即是介面 測試。

 

為什麼要做介面測試

隨著系統越來越多,以及複雜性越來越高,為了保證系統的獨立 性,也為了使業務更加的獨立,系統間的互動,越來越多的使用 介面,這時候,為了保證資料的傳輸的準確性,介面測試也應運 而生了,資料的錯誤,有可能引起系統的重大BUG,所以,為了 持續性的檢查介面資料的準確性,介面測試的重要性也就不言而 喻了。

 

介面測試的適用範圍

前面說了,介面是系統與系統間的互動,任何資料都是有其意義 的,如果在傳輸過程中丟失了或者說資料錯誤,可能引起系統的BUG,也有可能為此BUG付出很大的代價,所以我認為,任何介面都是要經過測試的,即有互動的地方,我們就要進行介面測試。

介面測試主要測試介面覆蓋率

 

介面測試的目的及方式

•核心:保證系統的穩定

•方式:持續整合

•目的:提高測試效率,保證資料的準確性

•文件:介面的資料型別是需要事先定義好的,所以,要形成文件 的習慣,以方便查閱,儘量減少團隊與團隊間的溝通成本,同理, 我們在介面測試中,也需要根據文件,整理出我們的介面測試數 據,整理出我們的斷言欄位,也方便其它人去稽核我們介面測試 的成果。

 

介面測試工具的原理

常見的介面測試工具

•典型商業工具:loadrunner,soapui

•典型開源工具:  jmeter jsoup httpclient python中的urllib2,urllib庫

•擴充套件外掛:Poster、POSTMAN

 

介面測試抓包

•協議原理

•協議捕獲(Firebug、fiddler、Httpwatch)

•協議變更 (Poster、PostMan、HttpRequest、Temper Data)

•http抓包:HTTP Analyzer

•通用資料抓包:MiniSniffer

•程序級抓包:WSExplorer

 

實現原理

•模擬客戶端對伺服器進行多連線

•偽造報文欺騙伺服器認證機制

•瞭解伺服器認證機制

•瞭解客戶<->伺服器之間的交流報文結構

•合理的技術構造報文結構

 

工具原理

•LoadRunner

      •原理

     •HTTP請求及斷言方式

     •WebService請求及斷言方式

     •資料驅動

 

•Jmeter

       •執行緒組

       •HTTP預設請求

       •HTTP請求

       •斷言

       •檢視結果樹

 

 

•jsoup

       •原理

       •HTTP請求

       •WebService請求

       •引數化

       •斷言及斷言擴充套件