<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

一種多協議接口測試系統及方法

文檔序號:8945622閱讀:520來源:國知局
一種多協議接口測試系統及方法
【技術領域】
[0001]本發明屬于計算機測試領域,尤其設計一種多協議接口測試系統及方法。
【背景技術】
[0002]傳統的接口測試是指測試系統組件間的接口。接口測試主要用于檢測外部系統與系統之間以及內部各個子系統之間的交互點,測試的重點是要檢查數據的交換,傳遞和控制管理過程,以及系統間的相互邏輯依賴關系等。目前的實現主要是由開發人員或白盒測試工程師,自己編寫程序去調用或者利用一些工具去執行接口測試。
[0003]SoapUI是目前業界主流的接口測試工具,提供簡單的界面,提供接口地址和參數類型,就可以支持webservice和Rest協議的接口測試,然而現有的接口測試工具具有以下缺陷:
[0004]1.對于一些復雜協議的接口如HTTP接口和Saf接口不能支持測試;
[0005]2.目前是面向SOA架構的系統,接口特別多,傳統的接口測試都是需要自己編寫接口調用代碼來實現接口測試,門檻比較高,故普通測試人員實現接口測試比較困難;
[0006]3.由于輸入輸出數據太多,目前主流的接口測試工具無法一次性實現大批量的接口,大量數據同時執行;
[0007]4.接口數據通常數目很多,一個接口可能對應幾百條測試數據,若新增或變更字段,幾百條數據的期望結果都得修改,維護工作量比較大。

【發明內容】

[0008](一 )要解決的技術問題
[0009]本發明的目的在于提供一種多協議接口測試系統及方法,能對主要的webservice接口、http接口和Saf接口進行測試,不需要通過編寫程序就能實現接口測試,而且大量接口和數據能快速批量運行,并能快速維護接口數據。
[0010](二)技術方案
[0011]本發明提供一種多協議接口測試系統,包括配置單元、調用單元、執行單元和比對單元,其中:
[0012]配置單元用于配置接口參數;
[0013]調用單元根據接口參數,調用本地接口,得到期望數據;
[0014]執行單元根據接口參數,調用待測接口,得到測試數據;
[0015]比對單元用于比對期望數據和測試數據,得到測試結果。
[0016]本發明還提供一種多協議接口測試方法,其特征在于,包括以下步驟:
[0017]SI,根據接口參數,調用本地接口,得到期望數據;
[0018]S2,根據所述接口參數,調用待測接口,得到測試數據;
[0019]S3,比對所述期望數據和所述測試數據,得到測試結果。
[0020](三)有益效果
[0021]本發明提供的多協議接口測試系統及方法,具有以下優點:
[0022]1、通過對不接口進行相應參數配置,使得能對不同協議的接口(webservice接口、HTTP接口和Saf接口 )進行測試,提高測試效率。
[0023]2、本發明通過配置的方式即能實現接口測試,無需編寫代碼,適用于所有測試人員。
[0024]3、因為前臺界面發起測試請求后,后臺服務器接收到請求后將執行任務分發到多臺執行機器上并發執行任務,多臺機器同時執行任務,故能快速批量的運行大量的接口和測試數據。
[0025]4、本發明將測試數據都會持久化保存在數據庫里面,能快速維護接口數據。
【附圖說明】
[0026]圖1是本發明實施例提供的多協議接口測試系統的結構示意圖。
[0027]圖2是本發明實施例提供的多協議接口測試系統的工作原理圖。
[0028]圖3是本發明實施例提供的多協議接口測試方法的流程圖。
【具體實施方式】
[0029]本發明提供一種多協議接口測試系統,包括配置單元、調用單元、執行單元和比對單元,其中,配置單元配置接口參數,調用單元根據接口參數,調用本地接口,得到期望數據,執行單元根據接口參數,調用待測接口,得到測試數據,比對單元比對期望數據和測試數據,得到測試結果。
[0030]在一種實施方式中,接口參數包括接口類型、接口地址、接口方法名、版本號、group和輸入數據,其中接口類型可以包括Saf接口、HTTP接口及webservice接口,接口地址是指待測的接口的URL,接口方法名是接口待測方法的名稱,版本號是Saf接口特有的屬性跟后面的group字段配合使用,group是指接口所在的分組,輸入數據指的是接口的輸入參數,包含合法的輸入參數和不合法的輸入參數。
[0031]在一種實施方式中,調用單元根據接口類型,調用相應的本地接口,將輸入數據輸入至本地接口,得到輸出數據,并檢查所述輸出數據是否正確,若正確,將輸出數據保存為期望數據。
[0032]在一種實施方式中,若本地接口和所述待測接口為Saf接口,執行單元將接口方法名、group及版本號封裝至HTTP請求,并將HTTP請求發送Rest接口,Rest接口根據接口方法名、group及版本號找到待測的Saf接口,將輸入數據輸入至待測的Saf接口,得到測試數據。
[0033]在一種實施方式中,若本地接口和待測接口為HTTP接口,執行單元將接口方法名、group及版本號封裝至HTTP請求,并將HTTP請求發送接口地址,找到待測的HTTP接口,將輸入數據輸入至待測的HTTP接口,得到測試數據。
[0034]在一種實施方式中,若本地接口和待測接口為webservice接口,執行單元根據客戶端調用webservice接口的方式,調用待測的webservice接口,將輸入數據輸入至待測的webservice接口,得到測試數據。
[0035]在一種實施方式中,該系統還包括數據庫,用于存儲所述期望數據。
[0036]在一種實施方式中,比對單元對期望數據和測試數據進行全局匹配或局部匹配,得到測試結果,其中,全局匹配是指全文的比對,局部匹配是指部分字段的匹配,在輸出參數每次都不變動的情況下,進行全局匹配,在輸出參數非關鍵字段經常變動的情況下,進行局部匹配。
[0037]本發明還提供一種多協議接口測試方法,其特征在于,包括以下步驟:
[0038]SI,根據接口參數,調用本地接口,得到期望數據;
[0039]S2,根據所述接口參數,調用待測接口,得到測試數據;
[0040]S3,比對所述期望數據和所述測試數據,得到測試結果。
[0041]本發明提供的多協議接口測試系統及方法,能對主要的webservice接口、http接口和Saf接口進行測試,不需要通過編寫程序就能實現接口測試,而且大量接口和數據能快速批量運行,并能快速維護接口數據。
[0042]為使本發明的目的、技術方案和優點更加清楚明白,以下結合具體實施例,并參照附圖,對本發明進一步詳細說明。
[0043]圖1是本發明實施例提供的多協議接口測試系統的結構示意圖,如圖1所示,多協議接口測試系統包括配置單元、調用單元、執行單元和比對單元,其中:
[0044]配置單元配置接口參數,接口參數包括接口類型、接口地址、接口方法名、版本號、group和輸入數據。
[0045]例如,對于saf接口:
[0046]<saf: registryid = " jdZooKeepefprotocol = " jdZooKeepefaddress ="jdZooK eeper://192.168.150.119,192.168.150.120,192.168.150.121:2181"timeout=〃10000〃wait = 〃0〃/>〈saf:referenceid = ^IServiceExecTask^interface = 〃com.jd.service.1ServerExecTask^vers1n = 〃1.0〃group = 〃coo-easy-test_service〃>
[0047]其中,Addreess的值就是接口所在的地址,并且通過interface名稱vers1n和group的值,區分接口是不是唯一的。因為每個接口可能會發布多個版本。輸入數據指的是此interface的方法的輸入參數,如getOrderByld (String orderid)屬于某個待測接口,待測方法為getOrderByld,傳入不同的參數,如0000,12345678等輸入參數去測試該方法。
[0048]對于HTTP 或 webservice 接口:
[0049]HTTP 接口的接口地址為的 URLjn http://qone.jd.com/system/delete,輸入參數{〃code〃:0, 〃systemid〃: 1001},Webservice 的接口 URL 通常是一個 wsdl 或 wadi 地址,如http://localhost:808
當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影