偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

接口測(cè)試用例設(shè)計(jì)全攻略:關(guān)鍵步驟+避坑指南

開發(fā) 前端
接口測(cè)試在需求分析完成之后,即可設(shè)計(jì)對(duì)應(yīng)的接口測(cè)試用例,然后根據(jù)用例進(jìn)行接口測(cè)試。接口測(cè)試用例的設(shè)計(jì)也需要用到黑盒測(cè)試用例設(shè)計(jì)方法,和測(cè)試流程與理論章節(jié)的功能測(cè)試用例設(shè)計(jì)的方法類似,設(shè)計(jì)過程中還需要增加與接口特性相關(guān)的測(cè)試用例。

簡(jiǎn)介

接口測(cè)試在需求分析完成之后,即可設(shè)計(jì)對(duì)應(yīng)的接口測(cè)試用例,然后根據(jù)用例進(jìn)行接口測(cè)試。接口測(cè)試用例的設(shè)計(jì)也需要用到黑盒測(cè)試用例設(shè)計(jì)方法,和測(cè)試流程與理論章節(jié)的功能測(cè)試用例設(shè)計(jì)的方法類似,設(shè)計(jì)過程中還需要增加與接口特性相關(guān)的測(cè)試用例。

圖片圖片

接口測(cè)試的質(zhì)量目標(biāo)

  • 功能
  • 性能
  • 安全
  • 兼容
  • 健壯性
  • 高可用性(中間件)

協(xié)議分析方法

  • 網(wǎng)絡(luò)監(jiān)聽:

TcpDump

WireShark

  • 代理 Proxy
  • 推薦工具:手工測(cè)試 Charles [全平臺(tái)]、安全測(cè)試 BurpSuite [全平臺(tái) Java]
  • 自動(dòng)化測(cè)試:mitmproxy
  • 其他代理:Fiddler [僅 Windows]、AnyProxy [全平臺(tái)]

接口測(cè)試用例的設(shè)計(jì)方法

正式設(shè)計(jì)接口測(cè)試用例之前,需要梳理一下接口測(cè)試的思路:

圖片圖片

基本功能流程測(cè)試

在基本功能流程測(cè)試方面,首先需要先執(zhí)行冒煙測(cè)試,把最基本的功能流程走通。冒煙測(cè)試決定提測(cè)是否成功,如果通過冒煙測(cè)試,才會(huì)進(jìn)入到詳細(xì)的測(cè)試階段。如果冒煙測(cè)試不通過,需要打回給開發(fā),開發(fā)修改之后重新提測(cè)。冒煙測(cè)試通過之后,進(jìn)行正常流程覆蓋測(cè)試,粒度會(huì)比冒煙測(cè)試更細(xì)一些,覆蓋一些分支業(yè)務(wù)邏輯。

基于輸入域的測(cè)試

因?yàn)榘l(fā)出接口請(qǐng)求需要攜帶請(qǐng)求參數(shù),所以肯定會(huì)涉及到關(guān)于請(qǐng)求參數(shù)的各種用例的設(shè)計(jì)。

關(guān)于請(qǐng)求參數(shù)的用例設(shè)計(jì)可以考慮下面這些方面

  • 邊界值測(cè)試

對(duì)于有范圍要求的參數(shù),需要綜合等價(jià)類和邊界值的方法設(shè)計(jì)測(cè)試用例。邊界值選擇上點(diǎn)和離點(diǎn)即可,要覆蓋到有效等價(jià)類和無效等價(jià)類。

  • 特殊字符校驗(yàn)

對(duì)于很多請(qǐng)求參數(shù)會(huì)要求不能包含特殊字符,對(duì)于有這類要求的字段,需要單獨(dú)設(shè)計(jì)包含特殊字符的測(cè)試用例來做驗(yàn)證。

  • 參數(shù)類型校驗(yàn)

有一些參數(shù)還會(huì)對(duì)于傳參值的類型有要求,比如只能包含英文數(shù)字,或者只能包含整數(shù)類型等。對(duì)于這種對(duì)類型有要求的字段,也要單獨(dú)設(shè)計(jì)測(cè)試用例,設(shè)計(jì)一些反向用例來做驗(yàn)證。

  • 必選參數(shù)校驗(yàn)

在接口中有必填的參數(shù),也有選填的參數(shù)。對(duì)于每一個(gè)必填參數(shù),都要設(shè)計(jì)一條不傳的用例來驗(yàn)證必填性。

  • 組合參數(shù)校驗(yàn)

對(duì)于有選填參數(shù)的接口來說,需要對(duì)于各種參數(shù)的不同組合場(chǎng)景進(jìn)行驗(yàn)證。比如只傳必填參數(shù),或者必填參數(shù)和不同數(shù)量的選填參數(shù)做組合的場(chǎng)景,可以使用判定表的方法進(jìn)行設(shè)計(jì)。

  • 排重邏輯

如果有的字段要求不能重復(fù),那么需要對(duì)它進(jìn)行排重邏輯的覆蓋,看看重復(fù)請(qǐng)求相同的參數(shù),服務(wù)端的處理邏輯是不是正確。

  • 接口冪等性

冪等是指任意多次執(zhí)行所產(chǎn)生的影響均與一次執(zhí)行的影響相同。保證接口的冪等性是非常重要的,尤其是在涉及資金的系統(tǒng),比如銀行、電商系統(tǒng)等。

例如用戶重復(fù)提交請(qǐng)求,或者網(wǎng)絡(luò)重發(fā),系統(tǒng)重試等場(chǎng)景,都需要設(shè)計(jì)測(cè)試用例來保證接口的冪等性。接口的冪等測(cè)試,需要多次發(fā)送同一參數(shù)的請(qǐng)求,查看服務(wù)端響應(yīng)是否只有一次是成功的。

線程安全測(cè)試

線程安全測(cè)試包含了并發(fā)測(cè)試、分布式測(cè)試。分布式更多的一個(gè)概念,是為了解決單個(gè)物理服務(wù)器容量和性能瓶頸問題而采用的優(yōu)化手段。

分布式的實(shí)現(xiàn)有兩種形式:

  • 水平擴(kuò)展:當(dāng)一臺(tái)機(jī)器扛不住流量時(shí),就通過添加機(jī)器的方式,將流量平分到所有服務(wù)器上,所有機(jī)器都可以提供相當(dāng)?shù)姆?wù)。
  • 垂直拆分:前端有多種查詢需求時(shí),一臺(tái)機(jī)器扛不住,可以將不同的需求分發(fā)到不同的機(jī)器上。

相對(duì)于分布式來講,高并發(fā)在解決的問題上會(huì)集中一些,它的重點(diǎn)是測(cè)試同時(shí)有多少量,比如在線直播服務(wù)同時(shí)有上萬人觀看。

高并發(fā)可以通過分布式技術(shù)去解決,將并發(fā)流量分到不同的物理服務(wù)器上。但除此之外,還可以有很多其他優(yōu)化手段,比如使用緩存系統(tǒng),還可以使用多線程技術(shù)將一臺(tái)服務(wù)器的服務(wù)能力最大化。

對(duì)于并發(fā)場(chǎng)景,需要測(cè)試多個(gè)相同參數(shù)的請(qǐng)求,只有一條請(qǐng)求成功,其他請(qǐng)求失敗。

對(duì)于分布式測(cè)試,則需要測(cè)試在分布式環(huán)境中并發(fā)相同參數(shù)的請(qǐng)求,只有一條請(qǐng)求成功,其他請(qǐng)求失敗。

故障注入

故障注入測(cè)試需要測(cè)試人員故意制造故障的場(chǎng)景,來保證系統(tǒng)的健壯性。

如果產(chǎn)品中用到了 Redis,就需要對(duì)于 Redis 做一些故障降級(jí)測(cè)試。Redis 一般會(huì)放在數(shù)據(jù)庫前面,用來做高速緩存。

Redis 故障注入需要開發(fā)配合清空 Redis 數(shù)據(jù),發(fā)請(qǐng)求,擊穿 Redis,從 DB 中獲取正常的數(shù)據(jù),并能回寫到 Redis 中。然后開發(fā)配合啟動(dòng) Redis 數(shù)據(jù)恢復(fù)功能,測(cè)試可以從 Redis 中獲取正確的數(shù)據(jù)。還需要開發(fā)配合制造 Redis 崩潰場(chǎng)景,發(fā)請(qǐng)求,測(cè)試是否降級(jí)從 DB 中獲取到正常的數(shù)據(jù)。

除了 Redis 之外,還需要進(jìn)行服務(wù)故障轉(zhuǎn)移測(cè)試。比如數(shù)據(jù)庫故障測(cè)試與接口故障測(cè)試。

  • 數(shù)據(jù)庫故障測(cè)試

開發(fā)配合制造數(shù)據(jù)庫數(shù)據(jù)丟失場(chǎng)景,啟動(dòng)數(shù)據(jù)恢復(fù)策略,測(cè)試規(guī)定時(shí)間段內(nèi)數(shù)據(jù)是否可以恢復(fù);開發(fā)配合制造數(shù)據(jù)庫崩潰場(chǎng)景,測(cè)試數(shù)據(jù)庫多活策略是否啟動(dòng),保證功能不受影響。

  • 接口故障測(cè)試

開發(fā)配合接口服務(wù)重啟,測(cè)試集群負(fù)載是否自動(dòng)重啟實(shí)例,所有請(qǐng)求無異常;開發(fā)配合制造集群崩潰場(chǎng)景,測(cè)試是否返回對(duì)應(yīng)的錯(cuò)誤信息,內(nèi)部服務(wù)是否有重試機(jī)制。

接口測(cè)試用例要素

  • 模塊
  • 測(cè)試標(biāo)題
  • 優(yōu)先級(jí)
  • 前置條件
  • 請(qǐng)求方法
  • 請(qǐng)求參數(shù)
  • 預(yù)期結(jié)果
  • 實(shí)際結(jié)果

圖片圖片

總結(jié)

  • 接口測(cè)試的質(zhì)量目標(biāo)
  • 協(xié)議分析方法
  • 接口測(cè)試用例設(shè)計(jì)思路
  • 接口測(cè)試用例要素
責(zé)任編輯:武曉燕 來源: 測(cè)試開發(fā)技術(shù)
相關(guān)推薦

2020-09-28 06:32:53

VDI測(cè)試清單虛擬化

2024-05-07 09:01:21

Queue 模塊Python線程安全隊(duì)列

2013-06-08 11:13:00

Android開發(fā)XML解析

2013-04-15 10:48:16

Xcode ARC詳解iOS ARC使用

2010-04-23 14:04:23

Oracle日期操作

2010-04-22 12:07:36

lvs負(fù)載均衡

2011-04-18 10:46:39

接口測(cè)試

2009-02-20 11:43:22

UNIXfish全攻略

2014-03-19 17:22:33

2009-10-19 15:20:01

家庭綜合布線

2009-12-14 14:32:38

動(dòng)態(tài)路由配置

2025-03-26 11:05:13

2024-03-26 08:58:55

集成測(cè)試軟件開發(fā)Python

2011-12-23 17:03:29

性能測(cè)試用例設(shè)計(jì)

2011-11-17 14:05:47

筆記本常見問題

2011-05-16 14:54:12

測(cè)試用例

2024-04-24 13:45:00

2024-04-03 12:30:00

C++開發(fā)

2010-10-11 13:54:03

Windows Ser

2015-03-04 13:53:33

MySQL數(shù)據(jù)庫優(yōu)化SQL優(yōu)化
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)