<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          嘆為觀止!這篇文章把服務(wù)端接口測(cè)試徹底講明白了

          共 2156字,需瀏覽 5分鐘

           ·

          2021-09-18 18:01


          服務(wù)端的接口測(cè)試我們一般從功能開(kāi)始進(jìn)行測(cè)試,比如請(qǐng)求參數(shù)和響應(yīng)參數(shù)的校驗(yàn),業(yè)務(wù)邏輯或業(yè)務(wù)規(guī)則的校驗(yàn),數(shù)據(jù)庫(kù)操作的校驗(yàn)。功能正常后會(huì)根據(jù)需要進(jìn)行安全相關(guān)的檢查、性能測(cè)試以及系列擴(kuò)展測(cè)試,比如與歷史版本的兼容性測(cè)試、接口的超時(shí)驗(yàn)證以及設(shè)計(jì)合理性驗(yàn)證等,用例設(shè)計(jì)也是從這幾個(gè)方面進(jìn)行分析設(shè)計(jì),下面的思維導(dǎo)圖是一個(gè)概要的測(cè)試關(guān)注方向



          詳細(xì)介紹如下:

          針對(duì)輸入

          輸入主要是指接口的入?yún)ⅲ覀兤匠5臏y(cè)試中,會(huì)先考慮正常的入?yún)ⅲ约爱惓5娜雲(yún)ⅲ惓G闆r包括:參數(shù)異常和數(shù)據(jù)異常,用例設(shè)計(jì)這塊使用較多的是等價(jià)類劃分和邊界值分析

          A、正常的入?yún)?/span>

          正常的入?yún)⒑芎美斫猓褪歉鶕?jù)接口設(shè)計(jì)文檔的入?yún)?biāo)準(zhǔn),輸入正常的參數(shù),響應(yīng)按接口設(shè)計(jì)文檔的約定條件正常返回

          B、參數(shù)異常

          參數(shù)異常包括:參數(shù)為空,多參或少參,錯(cuò)誤的參數(shù)

          C、數(shù)據(jù)異常

          數(shù)據(jù)異常:數(shù)據(jù)類型錯(cuò)誤、非空參數(shù)為空,長(zhǎng)度不符合設(shè)計(jì),不在字典范圍內(nèi)的數(shù)據(jù),不合法的成員,特殊字符或敏感字符,存在關(guān)聯(lián)關(guān)系的參數(shù)數(shù)據(jù)異常等

          針對(duì)處理邏輯

          接口測(cè)試前一般研發(fā)會(huì)提供接口設(shè)計(jì)文檔或業(yè)務(wù)相關(guān)的設(shè)計(jì)圖、流程圖,針對(duì)業(yè)務(wù)流程的處理邏輯,我們可以從入?yún)⒌南拗茥l件、事件的操作對(duì)象、業(yè)務(wù)的狀態(tài)轉(zhuǎn)換

          A、 限制條件分析

          數(shù)值的限制:字典,等級(jí),行業(yè)相關(guān)限制,金額限制,分?jǐn)?shù)限制等

          狀態(tài)的限制:有效|無(wú)效,在線|離線,拉黑|洗白等

          關(guān)系的限制:存在或不存在,綁定或解綁等

          權(quán)限的限制:管理員,普通用戶等

          B、 對(duì)象分析

          對(duì)象分析主要是對(duì)合法和不合法的對(duì)象進(jìn)行操作,比如銀行卡用戶對(duì)卡進(jìn)行充值,則可能存在:用戶A使用非用戶A的卡充值;用戶A使用自己的卡進(jìn)行充值,卡已過(guò)有效期;用戶A使用自己的卡進(jìn)行充值,卡為黑名單或掛失等。

          C、 狀態(tài)轉(zhuǎn)換的分析

          比如支付類業(yè)務(wù),先支付成功,撤單后會(huì)退款,再次支付如果支付未成功,則是支付失敗,狀態(tài)之間的切換是否正常,未按正常業(yè)務(wù)順利進(jìn)行操作時(shí),狀態(tài)怎么顯示,是否可控,是否出現(xiàn)異常狀態(tài),空狀態(tài)業(yè)務(wù)怎么處理等

          D、 時(shí)序分析

          一些復(fù)雜的活動(dòng)中,一個(gè)活動(dòng)是由一系列的動(dòng)作按照指定順序進(jìn)行,這些動(dòng)作形成一個(gè)動(dòng)作流,是有按照這個(gè)順序依次執(zhí)行,才能等到預(yù)期的結(jié)果,那么在執(zhí)行過(guò)程中發(fā)生的其他分支動(dòng)作程序會(huì)作何處理

          比如斑馬停車風(fēng)控業(yè)務(wù),如果在入站后車輛直接掉頭不駛?cè)敫咚贅I(yè)務(wù)如何處理?

          針對(duì)輸出

          在考慮異常時(shí),通常我們都會(huì)想到正常情況,無(wú)效的情況,但是不一定能覆蓋所有錯(cuò)誤碼,而接口定義返回的錯(cuò)誤碼可以幫助我們補(bǔ)充這一部分的用例,比如網(wǎng)絡(luò)異常,無(wú)效的規(guī)則,無(wú)效的參數(shù),無(wú)效的業(yè)務(wù)ID,無(wú)效的任務(wù),服務(wù)器異常等,把errorcode的值都補(bǔ)充上去可以設(shè)計(jì)更多的用例

          這種根據(jù)輸出進(jìn)行設(shè)計(jì)用例,可以發(fā)現(xiàn)前后端是否正常輸出結(jié)果,提示是否友好,提示是否出現(xiàn)敏感信息等

          數(shù)據(jù)庫(kù)操作

          A、對(duì)數(shù)據(jù)庫(kù)操作是否頻繁,是否會(huì)在寫(xiě)庫(kù)過(guò)程中占用大量的CPU,寫(xiě)庫(kù)完成后進(jìn)程是否釋放

          B、業(yè)務(wù)數(shù)據(jù)入庫(kù)是否正常,是否有重復(fù)數(shù)據(jù)入庫(kù),是否出現(xiàn)亂碼;日志數(shù)據(jù)入庫(kù)是否正常

          C、數(shù)據(jù)更新是否正常,尤其是時(shí)間類字段,時(shí)間是否為24小時(shí)制的格式

          D、數(shù)據(jù)刪除、備份是否正常

          安全性

          敏感信息是否加密(如銀行賬號(hào),密碼,轉(zhuǎn)賬金額)

          性能相關(guān)

          A、接口在什么情況下會(huì)出現(xiàn)并發(fā),并發(fā)場(chǎng)景是什么,什么情況下的并發(fā)會(huì)導(dǎo)致問(wèn)題

          B、最大并發(fā),響應(yīng)時(shí)間,吞吐量,資源消耗情況

          接口超時(shí)

          接口正常情況下是有返回的,那么如果接口不返回呢?所以接口超時(shí)后的處理也是測(cè)試需要考慮的部分,如果超時(shí)處理不當(dāng),可能會(huì)引起進(jìn)程阻塞,或者超時(shí)后又接收到接口返回導(dǎo)致邏輯錯(cuò)亂

          與歷史版本的兼容性分析

          已廢棄的協(xié)議或接口,代碼并未注釋,在某種特定的情況下可能會(huì)觸發(fā)歷史版本已廢棄的協(xié)議或接口,導(dǎo)致用戶使用或功能調(diào)用后出現(xiàn)意想不到的問(wèn)題,損失

          同一套系統(tǒng),不同服務(wù)之間的接口相互調(diào)用時(shí),新接口是否受歷史接口的影響,尤其是新舊接口都對(duì)某一個(gè)功能進(jìn)行處理,是否存在業(yè)務(wù)不兼容的問(wèn)題

          這一點(diǎn)需要測(cè)試人員是長(zhǎng)期的測(cè)試一個(gè)系統(tǒng)的,那么可能會(huì)想到這種場(chǎng)景,會(huì)清楚的知道什么時(shí)候哪個(gè)版本進(jìn)行了重構(gòu),廢棄了那些接口,新增了那些接口,哪些場(chǎng)景會(huì)觸發(fā)歷史接口的某個(gè)規(guī)則

          接口設(shè)計(jì)合理

          接口字段是否冗余,接口是否返回了調(diào)用方期望得到的信息,接口定義是否滿足所有調(diào)用者的需求,接口調(diào)用是否方便,接口是否可擴(kuò)展,接口參數(shù)使用是否方便,接口的業(yè)務(wù)規(guī)則是否都正確,接口都整個(gè)服務(wù)的使用會(huì)產(chǎn)生那些影響


          重磅消息: 由狂師老師授課主講的「全棧測(cè)試開(kāi)發(fā)技能訓(xùn)練營(yíng)」已經(jīng)開(kāi)課了,課程內(nèi)容非常值得推薦!課程大綱:重磅消息 | 2021年最新全棧測(cè)試開(kāi)發(fā)技能實(shí)戰(zhàn)指南(第2期)


          推薦閱讀
          官宣了,測(cè)試大神必備的"三把利劍"!

          Python全棧測(cè)試開(kāi)發(fā)實(shí)戰(zhàn)訓(xùn)練營(yíng)2期!開(kāi)課了!

          高級(jí)自動(dòng)化測(cè)試常見(jiàn)面試題(Web、App、接口)

          超詳細(xì),自動(dòng)化測(cè)試接入Jenkins+Sonar質(zhì)量門(mén)禁實(shí)踐

          月薪40K+銀行測(cè)試經(jīng)理,自動(dòng)化測(cè)試實(shí)踐經(jīng)驗(yàn)分享


          END

          所有原創(chuàng)文章
          第一時(shí)間發(fā)布至此公眾號(hào)「測(cè)試開(kāi)發(fā)技術(shù)」

          長(zhǎng)按二維碼/微信掃碼  添加作者


          閱讀原文

          瀏覽 47
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲欧洲视频网站 | 国产高清无码内射 | 青青日逼 | 大香蕉伊人18禁止出售借阅 | 欧美aaa在线 |