本文章轉(zhuǎn)載于搜狗測(cè)試
對(duì)于測(cè)試人員的基本技能——測(cè)試用例的編寫方法,我們已經(jīng)分享過通用的用例編寫方法(在公眾號(hào)中回復(fù)“搜:用例”即可返回相關(guān)文章),通用方法在不同類型的功能運(yùn)用時(shí)會(huì)有一些靈活運(yùn)用,目前功能類型劃分為四類:偏UI的功能,偏邏輯的功能,服務(wù)器交互功能和數(shù)據(jù)收集功能,我們已經(jīng)分享過偏UI的功能、偏邏輯的功能和數(shù)據(jù)收集類的功能如何進(jìn)行編寫用例,這次我們?cè)賮砜匆幌路?wù)器交互功能如何進(jìn)行用例編寫~
我們先來看一下服務(wù)器交互的功能有什么特點(diǎn)呢。
服務(wù)器交互功能是軟件客戶端通過網(wǎng)絡(luò)協(xié)議與服務(wù)器進(jìn)行互通的功能,因此可以將該類功能先拆分為客戶端和服務(wù)器兩大部分。在我們的生活中,各種網(wǎng)購(gòu)、搜索,各種手機(jī)軟件的功能,其實(shí)都是屬于服務(wù)器交互的功能,下面我們拿搜索來舉例進(jìn)行說明
需求:在瀏覽器中輸入內(nèi)容,能顯示正確的搜索結(jié)果
需求分析:
搜索是一個(gè)客戶端發(fā)送請(qǐng)求到服務(wù)器,服務(wù)器進(jìn)行解析,返回對(duì)應(yīng)的結(jié)果給客戶端并展現(xiàn)出來這樣一個(gè)過程。
功能拆分:
根據(jù)通用方法,首先進(jìn)行對(duì)象拆分,分為客戶端和服務(wù)器兩個(gè)對(duì)象,然后再分別進(jìn)行深入分析。為何要分為客戶端和服務(wù)器呢?客戶端和服務(wù)器本身的邏輯是可以獨(dú)立的,它們的相互關(guān)系是依靠URL請(qǐng)求來維持的,分開測(cè)試便于區(qū)分重點(diǎn),避免相互干擾,便于定位問題
客戶端功能分析:
客戶端發(fā)送URL請(qǐng)求
客戶端獲取服務(wù)器返回結(jié)果進(jìn)行展現(xiàn)
服務(wù)器功能分析:
接收客戶端發(fā)送的請(qǐng)求并進(jìn)行分析,返回對(duì)應(yīng)的結(jié)果給客戶端
拆分測(cè)試對(duì)象到這里是否結(jié)束了呢?
結(jié)果是因人而異的,在這里我拆分出來的測(cè)試對(duì)象為:
客戶端:
客戶端請(qǐng)求
客戶端展現(xiàn)
服務(wù)器:
數(shù)據(jù)解析結(jié)果
拆分測(cè)試對(duì)象的原則是拆分到最小原子,就是拆分到自己所認(rèn)為的最小粒度,因此不同的人拆分出來的測(cè)試對(duì)象可能是不一樣滴~
拆分完測(cè)試對(duì)象后,根據(jù)通用方法,下一步是找出檢查點(diǎn)
檢查點(diǎn)是測(cè)試對(duì)象的某一屬性。
客戶端:
客戶端請(qǐng)求
請(qǐng)求URL及其參數(shù)
客戶端展現(xiàn)
瀏覽器中顯示的搜索結(jié)果
服務(wù)器:
服務(wù)器數(shù)據(jù)解析結(jié)果
服務(wù)器返回的內(nèi)容(一般可以通過抓包工具來看)
OK,檢查點(diǎn)也找完了,下一步是什么呢?根據(jù)通用方法流程,應(yīng)該是找影響因素了。
如何找影響因素呢?不要忘了,兩個(gè)方向:內(nèi)因和外因;兩個(gè)方面:正常和異常
客戶端:
客戶端請(qǐng)求
請(qǐng)求URL及其參數(shù)
請(qǐng)求時(shí)機(jī)
網(wǎng)絡(luò)狀況(斷網(wǎng)、超時(shí)等)
影響參數(shù)值的因素
……
客戶端展現(xiàn)
瀏覽器中顯示的搜索結(jié)果
當(dāng)前使用的瀏覽器
服務(wù)器返回值(404、302等)
服務(wù)器返回內(nèi)容(格式、內(nèi)容)
……
服務(wù)器:
服務(wù)器數(shù)據(jù)解析結(jié)果
服務(wù)器返回的內(nèi)容(一般可以通過抓包工具來看)
請(qǐng)求URL中的參數(shù)
請(qǐng)求URL中的頭信息
……
到此為止,功能大綱基本就出來了,剩下的就是整理和填寫用例了。
我們?cè)賮砘仡櫼幌?,為何服?wù)器交互的功能要先拆分為客戶端和服務(wù)器呢?
對(duì)客戶端來講,實(shí)際情況應(yīng)該是:不管服務(wù)器返回什么樣的結(jié)果,客戶端都能進(jìn)行處理,且結(jié)果顯示友好不突兀
對(duì)服務(wù)器來講,實(shí)際情況應(yīng)該是:不管客戶端給什么樣的數(shù)據(jù),服務(wù)器都能反饋回相對(duì)應(yīng)的結(jié)果
這樣來看,客戶端和服務(wù)器分別測(cè)試是更有效率的,但是,千萬(wàn)千萬(wàn)不要忘了最后一步,客戶端要與服務(wù)器進(jìn)行聯(lián)調(diào)測(cè)試哦,這一步是絕對(duì)不可以省略掉的~
本次的分享到此就結(jié)束了,用例編寫系列到此也告一段落了,對(duì)于用例編寫您有什么問題,可以提出來,我們一起分析解決,共同進(jìn)步~;對(duì)于功能類型您有什么想法,也可以跟我們一起討論~