接口測試學(xué)習(xí)筆記_第1頁
接口測試學(xué)習(xí)筆記_第2頁
接口測試學(xué)習(xí)筆記_第3頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、接口測試概述: 在軟件進(jìn)行測試時(shí),為了驗(yàn)證軟件對外的接口服務(wù)是否可以正常提供服務(wù)及軟件在不同 場景中執(zhí)行路徑的安全性和可操作性,需要對接口進(jìn)行測試。接口測試( interface testing )的目的是測試與系統(tǒng)相關(guān)聯(lián)的外部接口,測試的重 點(diǎn)是檢查數(shù)據(jù)的交互, 傳遞和控制管理過程, 提供測試質(zhì)量和測試覆蓋, 更好地重新軟件缺 陷和定位錯(cuò)誤。接口測試主要考慮的問題是 模塊接口 和 系統(tǒng)接口 。1. 模塊接口的測試 模塊接口測試主要包括以下內(nèi)容:1) 各個(gè)模塊連接集成起來的時(shí)候,穿越模塊接口的數(shù)據(jù)會(huì)不會(huì)丟失。2) 各個(gè)子功能組合起來,能否達(dá)到預(yù)期要求。3) 一個(gè)模塊的功能是否對另外一個(gè)模塊的功

2、能產(chǎn)生不利的影響。4) 全局?jǐn)?shù)據(jù)結(jié)構(gòu)是否有問題。5) 模塊的積累誤差是否達(dá)到了不可介紹的程度。6) 系統(tǒng)環(huán)境的測試。2. 系統(tǒng)接口的測試 系統(tǒng)接口的測試主要包括以下內(nèi)容:1) 服務(wù)器接口的測試。包括服務(wù)器與交換機(jī)接口,以及服務(wù)器與磁盤陣列的接口。重 點(diǎn)測試在線的狀態(tài),測試當(dāng)服務(wù)器發(fā)送故障時(shí),交換機(jī)或者磁盤陣列能否與備用服 務(wù)器連接上。2) 交換機(jī)接口的測試,包括交換機(jī)與防火墻接口、交換機(jī)與磁盤陣列的接口,以及交 換機(jī)與路由器接口的測試。3) 路由器與調(diào)制解調(diào)器的接口測試,包括路由器與單個(gè)調(diào)制解調(diào)器的接口,以及交換 機(jī)與多個(gè)調(diào)制解調(diào)器的接口。4) 調(diào)制解調(diào)器與通信平臺(tái)接口的測試,包括調(diào)制解調(diào)器與

3、通信平臺(tái)的DDN接口,調(diào)制解調(diào)器與通信平臺(tái)的 ISDN接口, 調(diào)制解調(diào)器與通信平臺(tái)的 X.25 接口, 以及調(diào)制解 調(diào)器與通信平臺(tái)的 FR(幀中繼 ) 接口。接口測試的內(nèi)容: 接口測試主要包括兩項(xiàng)內(nèi)容 :1. 接口邏輯測試 接口邏輯測試是指根據(jù)業(yè)務(wù)邏輯、 輸入?yún)?shù)、 輸出值的描述, 對正常輸入情況下所得的輸出 值是否正確的測試,也就是測試對外提供的接口服務(wù)是否正常工作。2. 模塊接口測試 模塊接口測試是為了保證數(shù)據(jù)的安全及程序在異常情況下的邏輯的正確性而進(jìn)行的測試。 模塊接口測試的主要包括以下四個(gè)方面:1) 空值( Null )輸入,檢查模塊接口對空值( Null )的反應(yīng)能力。2) 參數(shù)屬性

4、的測試,輸入一個(gè)未賦值的參數(shù)會(huì)出現(xiàn)的情況。3) 異常的測試,制造一些異常的測試場景,測試異常描述是否清晰。4) 參數(shù)的個(gè)數(shù)設(shè)計(jì)與模塊接口參數(shù)的個(gè)數(shù)不一致時(shí),檢查模塊接口的反應(yīng)能力。包 括以下兩種情況:模塊接口參數(shù)的個(gè)數(shù)不一致(或多于原設(shè)計(jì)的參數(shù)個(gè)數(shù),或少于原設(shè)計(jì)的參 數(shù)個(gè)數(shù));模塊接口參數(shù)的類型不一致(字符型和數(shù)值型混用)接口測試的測試項(xiàng)目:接口測試的測試項(xiàng)目主要包括以下幾點(diǎn):1) 數(shù)據(jù)類型問題,包括:變量的數(shù)據(jù)類型是否錯(cuò)誤。是否存在不同數(shù)據(jù)類型的賦值。是否存在不同數(shù)據(jù)類型的比較。2) 變量值問,包括:變量的初始化或缺省值收到有錯(cuò)誤。變量是否發(fā)生上溢或下溢。 變量的精度是否足夠。3) 邏輯判斷

5、問題,包括:是否由于精度原因?qū)е卤容^無效。表達(dá)式中的優(yōu)先級(jí)是否有誤。 邏輯判斷結(jié)果是否顛倒。4) 文件 I/O 問題,包括:對不存在的或者錯(cuò)誤的文件是否進(jìn)行操作。文件是否不以正確的方式打開。文件結(jié)束判斷是否正確。是否正確地關(guān)閉了文件。Web的接口測試:Web的接口測試主要討論:服務(wù)器接口和外部接口。() 服務(wù)器接口測試服務(wù)器接口測試是測試瀏覽器與服務(wù)器的接口。測試人員提交事務(wù),然后 查看服務(wù)器的記錄,并驗(yàn)證在瀏覽器上所看到是操作是否正好是服務(wù)器發(fā) 送的操作。() 外部接口測試有些 web系統(tǒng)有外部接口, 測試的時(shí)候要使用 web接口發(fā)送一些事務(wù)數(shù)據(jù), 分別有效信用卡、無效信用卡和被盜信用卡進(jìn)行

6、驗(yàn)證。Web應(yīng)用服務(wù)器還包括以下其他的測試:實(shí)時(shí)通信服務(wù)器測試。郵件服務(wù)器測試。群件服務(wù)器測試文件 / 打印服務(wù)器。接口測試策略:由于平臺(tái)服務(wù)器是通過接口來與客戶端交互數(shù)據(jù)提供各種服務(wù), 因此服務(wù)器測試工作首先需 要進(jìn)行的是接口測試工作。 測試人員需要通過服務(wù)器接口功能測試來確保接口功能實(shí)現(xiàn)正確, 那么其他測試人員進(jìn)行客戶端與服務(wù)器結(jié)合的系統(tǒng)測試過程中, 就能夠排除由于服務(wù)器接口 缺陷所導(dǎo)致的客戶端問題, 便于開發(fā)人員定位問題。 以下便是個(gè)人的平臺(tái)服務(wù)器接口功能測 試經(jīng)驗(yàn)總結(jié) :、接口測試范圍根據(jù)服務(wù)器的測試需求,接口測試范圍主要分為:1、新增接口的測試; 2、新增業(yè)務(wù)功能接口測試; 3 、整

7、個(gè)服務(wù)器的接口測試。所需測試測試接口依次增多,在測試時(shí)間足夠的 條件下, 當(dāng)然需要對所有接口進(jìn)行測試用例的設(shè)計(jì), 但如果測試較短的情況下, 則應(yīng)該首先 根據(jù)用戶的典型操作對測試接口進(jìn)行優(yōu)先級(jí)劃分,對調(diào)用頻繁接口需要優(yōu)先進(jìn)行測試。 二、接口測試策略在進(jìn)行平臺(tái)服務(wù)器接口測試之前, 首先需要整理服務(wù)器接口的測試方案, 分析接口測試 的要點(diǎn),平臺(tái)服務(wù)器的接口測試內(nèi)容主要有:接口設(shè)計(jì)檢查 接口用于服務(wù)器與客戶端的數(shù)據(jù)交互, 客戶端通過網(wǎng)絡(luò)協(xié)議傳遞的數(shù)據(jù)為服務(wù)器接口的輸入 數(shù)據(jù),因此應(yīng)該首先通過服務(wù)器接口文檔及客戶端數(shù)據(jù)約束文檔進(jìn)行交互數(shù)據(jù)的有效性檢查: n 整數(shù)型數(shù)據(jù)位數(shù) n 浮點(diǎn)型數(shù)據(jù)精度n 字符串?dāng)?shù)

8、據(jù)范圍值 要求客戶端的整數(shù)型、 浮點(diǎn)型、 字符串?dāng)?shù)據(jù)以及其最大值和最小值都能作為服務(wù)器接口的有 效輸入。 這些工作在服務(wù)器設(shè)計(jì)評(píng)審時(shí)就可以進(jìn)行, 以便確保不會(huì)出現(xiàn)客戶端上傳數(shù)據(jù)被服 務(wù)器自動(dòng)進(jìn)行截?cái)嗷蛩纳嵛迦氲牟僮?。接口依賴關(guān)系檢查 以上策略只談到單個(gè)接口的測試方法,對于用戶來說,一個(gè)操作可能會(huì)造成服務(wù)器調(diào)用 多個(gè)接口來進(jìn)行完成, 因此還需要從業(yè)務(wù)處理的角度, 對各種業(yè)務(wù)操作所涉及的多個(gè)接口之 間依賴調(diào)用進(jìn)行測試。接口依賴關(guān)系檢查主要是通過接口的輸出值為另一接口的輸入值來實(shí)現(xiàn)的,因此在進(jìn)行 接口測試之前, 需要分析所測試接口的輸入值是通過客戶端還是其他接口輸出來獲取的, 在 設(shè)計(jì)測試用例時(shí),加

9、入接口的依賴關(guān)系說明以便于測試。接口輸入 /輸出驗(yàn)證 服務(wù)器接口功能測試類似于單元測試,在設(shè)計(jì)測試用例時(shí),側(cè)重點(diǎn)在于接口模塊輸入/輸出項(xiàng)的正確性驗(yàn)證,根據(jù)接服務(wù)器接口處理方式,對各種接口進(jìn)行分類: 第一類:條件判斷接口這類接口在接收到請求數(shù)據(jù)后,會(huì)根據(jù)輸入?yún)?shù)進(jìn)行條件判斷,然后返回相應(yīng)結(jié)果碼, 通常涉及條件判斷的接口有:用戶鑒權(quán)接口、升級(jí)狀態(tài)上報(bào)、密碼修改/重置等接口。因此輸入 /輸出項(xiàng)驗(yàn)證的側(cè)重點(diǎn)主要集中在:1)判斷條件的驗(yàn)證 要對判斷條件進(jìn)行驗(yàn)證, 則需要知道接口是根據(jù)哪些輸入項(xiàng)來進(jìn)行判斷的, 以密碼重置接口 為例:密碼重置接口接口功能: 用戶登錄之后發(fā)起找回密碼操作, 用戶輸入郵箱信息后

10、,游戲中心將向平臺(tái) 服務(wù)器發(fā)送請求,平臺(tái)服務(wù)器將隨機(jī)為用戶生成新的密碼,發(fā)到用戶的郵箱中。接口方向:游戲中心 平臺(tái)服務(wù)器遵循協(xié)議: HTTPS ,請求消息使用 Post 方式參數(shù)名稱參數(shù)類型參數(shù)長度說明userIDInt10用戶 ID 號(hào)emailString60郵箱地址keyString50接口名稱versionString8版本號(hào)響應(yīng)消息( sendMessageRes )參數(shù)名稱參數(shù)類型參數(shù)長度說明resultCodeInt5結(jié)果返回碼,返回 42000 表示處理成功此接口根據(jù)輸入的 userID 、 email 參數(shù)來進(jìn)行數(shù)據(jù)正確性的判斷( key 是接口名稱,如果錯(cuò) 誤服務(wù)器將不會(huì)處

11、理, version 是版本號(hào),其值只是用于記錄,不參與判斷),設(shè)計(jì)接口測 試用例時(shí), 應(yīng)該首先對接口的判斷參數(shù)進(jìn)行驗(yàn)證, 這些輸入項(xiàng)不能為空, 然后利用等價(jià)類劃 分、邊界值方法來根據(jù) userID 、email 輸入項(xiàng)設(shè)計(jì)各種合法的數(shù)據(jù),驗(yàn)證接口是否可以正常 處理。2)異常數(shù)據(jù)的響應(yīng)只考慮正常情況, 而不考慮異常場景是無法保證接口功能運(yùn)行正常, 對于密碼重置接口, 用 戶 ID 不存在、不合法,郵箱輸入格式錯(cuò)誤、用戶郵箱信息不存在或未激活就是測試時(shí)需要 考慮的異常場景, 設(shè)計(jì)這類輸入值, 并且檢查接口返回的響應(yīng)碼, 響應(yīng)碼的正確才能保證客 戶端根據(jù)異常情況來顯示相應(yīng)的提示信息。 簡而言之,

12、條件判斷的接口其測試策略就是根據(jù) 判斷條件來設(shè)計(jì)各種輸入值來檢驗(yàn)接口的功能。第二類:數(shù)據(jù)查詢接口這類接口接收到請求數(shù)據(jù)后, 首先會(huì)驗(yàn)證請求是否合法, 然后會(huì)根據(jù)請求項(xiàng)查詢數(shù)據(jù)庫 相應(yīng)表中數(shù)據(jù)返回給客戶端,通常涉及數(shù)據(jù)查詢的接口有:用戶基本資料/經(jīng)驗(yàn)值 /賽事信息查詢、游戲列表獲取、在線人數(shù)查詢等接口。以用戶經(jīng)驗(yàn)值查詢接口為例:用戶經(jīng)驗(yàn)值查詢接口接口功能: 用戶登錄游戲中心后,可以查詢自己每個(gè)游戲項(xiàng)目的經(jīng)驗(yàn)值信息, 包括此項(xiàng) 目的經(jīng)驗(yàn)值等級(jí)、等級(jí)稱號(hào)、今日經(jīng)驗(yàn)值上限等。接口方向:游戲中心 平臺(tái)服務(wù)器遵循協(xié)議: HTTP+XML ,請求消息使用 Post 方式 參數(shù)名稱 參數(shù)類 參數(shù)長 說明 型度

13、userIDInt10用戶 ID 號(hào)webkeyString60當(dāng)前分配給指定登錄用戶的密鑰keyString50接口名稱versionString8版本號(hào)isAllInt1是否查詢用戶所有的運(yùn)動(dòng)項(xiàng)目經(jīng)驗(yàn)值0 :是; 1 否sportItemIDString50運(yùn)動(dòng)項(xiàng)目 ID ,當(dāng) isAll=1 時(shí)不能為空, 指定查詢某個(gè)運(yùn)動(dòng)項(xiàng)目 的經(jīng)驗(yàn)響應(yīng)消息( sendMessageRes )參數(shù)名稱參數(shù)類型參數(shù)長度說明sportItemIDString50運(yùn)動(dòng)項(xiàng)目 IDsumExpInt11運(yùn)動(dòng)經(jīng)驗(yàn)值總額expLevelInt3經(jīng)驗(yàn)值等級(jí)minExpInt11本級(jí)最小經(jīng)驗(yàn)值expOrderInt11經(jīng)

14、驗(yàn)值排名maxExpInt11本級(jí)最大經(jīng)驗(yàn)值todayExpInt11今日獲得經(jīng)驗(yàn)值todayExpLimitInt11今日經(jīng)驗(yàn)值上限designationString30稱號(hào)(對應(yīng)于經(jīng)驗(yàn)值)winCountInt11勝利場次lossCountInt11失敗場次isMaxExpInt1總經(jīng)驗(yàn)值是否達(dá)到最大 0 否; 1 是此接口首先會(huì)根據(jù) webkey 來判斷請求是否合法,然后根據(jù)請求參數(shù)中的userID 、 isAll 、sportItemID 來查詢數(shù)據(jù)表中相應(yīng)數(shù)據(jù)。除了象條件判斷接口一樣根據(jù)判斷項(xiàng) webkey 、請 求參數(shù) userID 、isAll 、sportItemID 設(shè)計(jì)合法

15、 /不合法和正常 /異常測試值之外, 還需要結(jié)合數(shù) 據(jù)庫來對查詢結(jié)果進(jìn)行驗(yàn)證 :1)是否根據(jù)正確的關(guān)聯(lián)數(shù)據(jù)表進(jìn)行查詢;2)驗(yàn)證查詢結(jié)果是否從數(shù)據(jù)表中正確項(xiàng)中獲取,涉及到多表聯(lián)合查詢時(shí),不同表中的相同 項(xiàng)設(shè)計(jì)不同測試數(shù)據(jù)進(jìn)行驗(yàn)證;3)修改查詢結(jié)果在數(shù)據(jù)表中對應(yīng)項(xiàng)中的數(shù)據(jù),使其為空值或客戶端相應(yīng)項(xiàng)的范圍值的最大 和最小值,查看接口輸出是否正確。第三類:邏輯運(yùn)算接口這類接口在收到請求數(shù)據(jù)之后, 會(huì)進(jìn)行一系列邏輯運(yùn)算, 然后根據(jù)處理結(jié)果更新數(shù)據(jù)庫 中的數(shù)據(jù),通常涉及邏輯運(yùn)算的接口有:比賽成績同步、商品支付、各種數(shù)據(jù)報(bào)表等接口。 以比賽成績同步接口為例:比賽成績同步接口接口功能 :游戲服務(wù)器將用戶每次的

16、比賽成績傳給平臺(tái)服務(wù)器, 平臺(tái)服務(wù)器根據(jù)用戶的 比賽成績更新此用戶的賽事排名,然后存入數(shù)據(jù)庫。接口方向:游戲服務(wù)器 平臺(tái)服務(wù)器遵循協(xié)議: HTTPS+XML ,請求消息使用 Post 方式參數(shù)名稱參數(shù)類 型參數(shù)長度說明userIDInt10用戶 i-dong 號(hào)webKeyString64當(dāng)前分配給指定登錄用戶的密鑰keyString50接口名稱versionString8版本號(hào)gymkanaCodeString30當(dāng)前比賽所參與的運(yùn)動(dòng)會(huì) ,該參數(shù)為空說明只是普通用戶 的比賽sportItemIDString50游戲項(xiàng)目的 IDsportItemNameString50游戲項(xiàng)目名稱sportS

17、erverIDString50游戲服務(wù)器 IPmatchSystemInt3競速跑賽制:100 米:1; 400 米:2; 800 米:4; 1500 米:8; 4 1×00 米:16;matchIdString50該場次比賽唯一 idrecorddouble當(dāng)前用戶成績 (如 record=8.123456 )。非正常結(jié)束比賽 時(shí),即 isWinner 3 或 4,如果是單人跑, isWinner=5 , record=-1unitString20成績單位isWinnerInt2當(dāng)前用戶是否贏了 0= 輸,1=贏,2未完成, 3主動(dòng)退出,4 被迫退出competitorIDInt1

18、0對手 idong 號(hào)competitorRecorddouble當(dāng)前對手成績,規(guī)則同 recordcompetitorIsWinnerint2對手輸贏,規(guī)則同 isWinnerstarttimeString14開始時(shí)間 (yyyy-MM-dd HH:mm:ss)endtimeString14結(jié)束時(shí)間 (yyyy-MM-dd HH:mm:ss)響應(yīng)消息( sendMessageRes)參數(shù)名稱參數(shù)類型參數(shù)長度說明resultCodeInt5結(jié)果返回碼,返回 42000 表示處理成功scoreInt11本次得分preRankInt11賽前積分在賽后的排名rankInt11積分排名upRankFl

19、agInt1排名上升: 1 ;排名不變: 0 ;排名下降: -1isUpLevelInt1經(jīng)驗(yàn)值是否升級(jí) 0 否; 1 是expInt11本次增加的經(jīng)驗(yàn)值expLevelInt3經(jīng)驗(yàn)值等級(jí)designationString30稱號(hào)(對應(yīng)于經(jīng)驗(yàn)值)cPreRankInt11對手賽前積分在賽后的排名cRankInt11對手賽后積分排名cUpRankFlagInt1對手排名上升: 1 ;排名不變: 0;排名下降: -1encourageWordString15鼓勵(lì)語句此接口比數(shù)據(jù)查詢接口又更加復(fù)雜,除了用條件判斷和數(shù)據(jù)查詢類接口的策略對此接口 進(jìn)行測試用例設(shè)計(jì)之外, 還需要驗(yàn)證對接口的算法規(guī)則進(jìn)行檢查, 因?yàn)榇私涌谏?/p>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論