服務(wù)端測(cè)試之接口測(cè)試用例設(shè)計(jì)

本文章轉(zhuǎn)載于搜狗測(cè)試

小伙伴們大家好计螺,上一次和大家分享了《服務(wù)端測(cè)試之接口測(cè)試初探》将塑,講了一些接口測(cè)試的基本概念和理論知識(shí)褥赊。在上次的分享中,簡(jiǎn)單提到了接口測(cè)試用例設(shè)計(jì)包含的幾個(gè)方面熬的。本期我將在上次分享的基礎(chǔ)上痊硕,和各位小伙伴一起具體看看這幾個(gè)方面都是什么,在實(shí)際的項(xiàng)目中應(yīng)該如何使用押框。

一岔绸、功能性用例設(shè)計(jì)

之前講過(guò),服務(wù)端的接口是和客戶(hù)端的功能相對(duì)應(yīng)的橡伞,對(duì)功能的驗(yàn)證盒揉,可以參照接口說(shuō)明文檔來(lái)進(jìn)行。概括起來(lái)講兑徘,就是我們需要驗(yàn)證接口說(shuō)明文檔中提到的各種情況刚盈,保證這些情況下接口的返回和最初設(shè)計(jì)的是一樣的,這樣我們就可以認(rèn)為該接口實(shí)現(xiàn)了功能需求挂脑。

舉個(gè)例子藕漱,目前有一個(gè)接口A,關(guān)于該接口的請(qǐng)求參數(shù)列表如下:

可以看到崭闲,規(guī)定該接口的請(qǐng)求類(lèi)型是get肋联,同時(shí)該接口包含4個(gè)請(qǐng)求參數(shù),那么在功能性的用例設(shè)計(jì)上镀脂,我們可以考慮如下幾個(gè)方面:

1.以get方式請(qǐng)求牺蹄;

2.請(qǐng)求中需要包含這4個(gè)參數(shù);

3.各個(gè)參數(shù)的類(lèi)型符合要求薄翅;

4.key參數(shù)的長(zhǎng)度需要控制在10個(gè)字符以?xún)?nèi)沙兰。

通過(guò)這幾個(gè)方面寫(xiě)出來(lái)的case就是功能性的測(cè)試用例了。其實(shí)不難看出翘魄,功能性測(cè)試用例的目的是為了驗(yàn)證服務(wù)端在正常情況下是否實(shí)現(xiàn)了需求鼎天,因此構(gòu)造出的用例都是滿(mǎn)足接口說(shuō)明文檔的要求,即驗(yàn)證在正常情況下暑竟,客戶(hù)端傳入正常的參數(shù)后斋射,服務(wù)端可以正常響應(yīng)。

二但荤、業(yè)務(wù)邏輯用例設(shè)計(jì)

業(yè)務(wù)邏輯方面的用例設(shè)計(jì)與功能性用例設(shè)計(jì)不同罗岖,邏輯用例主要關(guān)注接口內(nèi)的各種判斷對(duì)應(yīng)的邏輯分支是否符合預(yù)期,這種用例不是針對(duì)某個(gè)具體的功能點(diǎn)腹躁,而是去驗(yàn)證接口內(nèi)部的各種處理邏輯桑包。這類(lèi)用例,往往需要以業(yè)務(wù)邏輯流程圖為依據(jù)進(jìn)行設(shè)計(jì)纺非。

舉個(gè)例子哑了,在小編最近測(cè)試的項(xiàng)目中赘方,畫(huà)出接口流程圖后有這樣的一個(gè)邏輯:

可以看到這一塊有兩個(gè)判斷,那么 針對(duì)這一塊兒的處理邏輯弱左,我們需要對(duì)不同的判斷分支都設(shè)計(jì)用例窄陡,以保證流程圖中涉及到的分支我們都有測(cè)試用例覆蓋。圖中涉及到的不同的分支有:

1.abdf拆火;

2.acg;

3.abdeg;

相應(yīng)的跳夭,我們的用例就應(yīng)該是:

1.userInfo != null && value(userGroup) != 0;

2.userInfo == null;

3.userInfo != null && value(userGroup) == 0;

業(yè)務(wù)邏輯的用例設(shè)計(jì)主要是以服務(wù)端接口內(nèi)部的邏輯流程圖為基礎(chǔ),針對(duì)流程圖中的判斷和分支進(jìn)行用例設(shè)計(jì)榜掌,保證服務(wù)端接口的每一種邏輯下都有測(cè)試用例覆蓋优妙。

三、異常處理的情況

由于客戶(hù)端與服務(wù)端接口之間通常是通過(guò)HTTP請(qǐng)求來(lái)進(jìn)行交互獲取數(shù)據(jù)憎账,因此對(duì)于請(qǐng)求中攜帶的參數(shù)以及數(shù)據(jù)的容錯(cuò)處理是必須考慮的一類(lèi)case套硼。關(guān)于異常處理我們可以歸為兩大類(lèi):參數(shù)異常和數(shù)據(jù)異常。具體而言常見(jiàn)的異常類(lèi)型有以下幾種:缺省或增加參數(shù)胞皱、參數(shù)類(lèi)型不對(duì)邪意、參數(shù)為空、數(shù)據(jù)超過(guò)限制等等反砌。我們還是用接口A的參數(shù)來(lái)舉例:

接口A的請(qǐng)求中一共有4個(gè)參數(shù)雾鬼;那么異常情況可以這樣去考慮:

1.多了一個(gè)/若干個(gè)參數(shù),比如請(qǐng)求中又?jǐn)y帶了一個(gè)v=1這樣的參數(shù)宴树;

2.缺省了某個(gè)參數(shù)策菜,比如請(qǐng)求中不帶page參數(shù);

3.參數(shù)類(lèi)型不對(duì)酒贬,比如isMob規(guī)定是boolean類(lèi)型又憨,可以嘗試傳遞一個(gè)其他的類(lèi)型;

4.數(shù)據(jù)為空锭吨,比如我們可以令key=(null)蠢莺,發(fā)送請(qǐng)求后檢查服務(wù)端的響應(yīng);

5.數(shù)據(jù)超過(guò)限制零如,比如在接口文檔中規(guī)定key的長(zhǎng)度不超過(guò)10個(gè)字符躏将,那么我們需要設(shè)計(jì)可以覆蓋到邊界值的用例,比如長(zhǎng)度為9考蕾、10祸憋、11等。

……

值得注意的是肖卧,在功能均已實(shí)現(xiàn)的時(shí)候夺衍,對(duì)服務(wù)端而言容錯(cuò)非常重要,如果容錯(cuò)做得不好喜命,往往可能一個(gè)格式不正確的參數(shù)就會(huì)引起服務(wù)端的異常甚至崩潰沟沙,因此在設(shè)計(jì)用例的時(shí)候,異常用例需要格外注意壁榕,需要盡可能多的設(shè)計(jì)出包含各種異常的用例矛紫,至少保證服務(wù)端在請(qǐng)求異常的情況下不會(huì)出現(xiàn)崩潰等極端狀況。

四牌里、性能和安全性方面

在進(jìn)行服務(wù)端測(cè)試的時(shí)候颊咬,性能和安全性方面的用例是必須要考慮的。服務(wù)端的性能測(cè)試往往與功能性測(cè)試分開(kāi)執(zhí)行牡辽,一般情況下在服務(wù)端的功能測(cè)試進(jìn)行完畢保證功能上沒(méi)有問(wèn)題的情況下喳篇,可以進(jìn)行性能測(cè)試。性能測(cè)試借助于一些工具開(kāi)展态辛,比如LoadRunner等麸澜,關(guān)于性能測(cè)試,在后續(xù)的分享中我們會(huì)為大家詳細(xì)介紹奏黑。安全性方面炊邦,主要需要考慮一些常見(jiàn)的安全策略,舉個(gè)例子熟史,在請(qǐng)求中需要攜帶用戶(hù)的敏感信息(比如電話號(hào)碼馁害、身份證號(hào)碼、地址信息等)時(shí)蹂匹,敏感信息一定是需要加密的碘菜,需要驗(yàn)證對(duì)這些數(shù)據(jù)加密的生效性;又比如限寞,在上面的接口A中忍啸,我們可以在參數(shù)中傳一段JS代碼,看服務(wù)端如何處理……

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末昆烁,一起剝皮案震驚了整個(gè)濱河市吊骤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌静尼,老刑警劉巖白粉,帶你破解...
    沈念sama閱讀 218,941評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異鼠渺,居然都是意外死亡鸭巴,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)拦盹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)鹃祖,“玉大人,你說(shuō)我怎么就攤上這事普舆√窨冢” “怎么了校读?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,345評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)祖能。 經(jīng)常有香客問(wèn)我歉秫,道長(zhǎng),這世上最難降的妖魔是什么养铸? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,851評(píng)論 1 295
  • 正文 為了忘掉前任雁芙,我火速辦了婚禮,結(jié)果婚禮上钞螟,老公的妹妹穿的比我還像新娘兔甘。我一直安慰自己,他們只是感情好鳞滨,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布洞焙。 她就那樣靜靜地躺著,像睡著了一般太援。 火紅的嫁衣襯著肌膚如雪闽晦。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,688評(píng)論 1 305
  • 那天提岔,我揣著相機(jī)與錄音仙蛉,去河邊找鬼。 笑死碱蒙,一個(gè)胖子當(dāng)著我的面吹牛荠瘪,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播赛惩,決...
    沈念sama閱讀 40,414評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼哀墓,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了喷兼?” 一聲冷哼從身側(cè)響起篮绰,我...
    開(kāi)封第一講書(shū)人閱讀 39,319評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎季惯,沒(méi)想到半個(gè)月后吠各,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,775評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡勉抓,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年贾漏,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片藕筋。...
    茶點(diǎn)故事閱讀 40,096評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡纵散,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情伍掀,我是刑警寧澤掰茶,帶...
    沈念sama閱讀 35,789評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站硕盹,受9級(jí)特大地震影響符匾,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜瘩例,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望甸各。 院中可真熱鬧垛贤,春花似錦、人聲如沸趣倾。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,993評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)儒恋。三九已至善绎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間诫尽,已是汗流浹背禀酱。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,107評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留牧嫉,地道東北人剂跟。 一個(gè)月前我還...
    沈念sama閱讀 48,308評(píng)論 3 372
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像酣藻,于是被迫代替她去往敵國(guó)和親曹洽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理辽剧,服務(wù)發(fā)現(xiàn)送淆,斷路器,智...
    卡卡羅2017閱讀 134,661評(píng)論 18 139
  • 文章來(lái)自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鵬閱讀 9,193評(píng)論 2 126
  • 已經(jīng)很久沒(méi)有想起你了 你會(huì)怪我嗎 我想是的 不然你怎么從不到我的夢(mèng)里來(lái)呢 就連你的臉 在我的記憶中也開(kāi)始慢慢模糊了...
    讀云軒札記閱讀 127評(píng)論 0 0
  • 在生活中怕轿,我們經(jīng)常會(huì)遇到偷崩,想幫助別人的時(shí)候。很多人往往會(huì)直接給建議撤卢,其實(shí)這種作法會(huì)讓對(duì)方覺(jué)得是遣責(zé)环凿。同時(shí)還會(huì)引起逆...
    阮聰穎閱讀 3,095評(píng)論 0 3
  • 2017年7月20星期四 晴 中午回到家,剛進(jìn)門(mén)女兒就向我匯報(bào)他學(xué)習(xí)的情況放吩。今天的作業(yè)完成的很好智听,作業(yè)寫(xiě)的...
    廈小薛智一爸爸閱讀 125評(píng)論 1 7