?? 視頻學(xué)習(xí):文末有免費(fèi)的配套視頻可觀看
?? 點(diǎn)擊文末小卡片,免費(fèi)獲取軟件測(cè)試全套資料,資料在手,漲薪更快
如果把測(cè)試簡(jiǎn)單分為兩類,那么就是客戶端測(cè)試和服務(wù)端測(cè)試??蛻舳说臏y(cè)試包括UI測(cè)試,兼容性測(cè)試等,服務(wù)端測(cè)試包括接口測(cè)試。接口測(cè)試檢查數(shù)據(jù)的交換,傳遞和控制管理過(guò)程,它繞過(guò)了客戶端,直接對(duì)服務(wù)端進(jìn)行測(cè)試。
客戶端測(cè)試與服務(wù)端測(cè)試的關(guān)系圖:
服務(wù)端非常復(fù)雜,就像下圖的阿里核心鏈路圖,包含大約150個(gè)組件,組件與組件之間進(jìn)行交互,形成了密集的后端網(wǎng)絡(luò)。UI測(cè)試無(wú)法覆蓋這么復(fù)雜的組件交互網(wǎng)絡(luò),所以要繞過(guò)客戶端,直接使用接口測(cè)試對(duì)服務(wù)端進(jìn)行測(cè)試。
阿里核心鏈路圖:
對(duì)行業(yè)的各種測(cè)試進(jìn)行分層,越往上,發(fā)現(xiàn)bug的時(shí)間越晚,成本(時(shí)間,人力,損失)越高。接口測(cè)試(Service)相比ui測(cè)試,可以更早發(fā)現(xiàn)問(wèn)題,更快的質(zhì)量反饋;同理,單元測(cè)試(Unit)相比接口測(cè)試,可以更早發(fā)現(xiàn)問(wèn)題,更快的質(zhì)量反饋,花費(fèi)的成本更低。
分層測(cè)試:
雖然接口測(cè)試覆蓋面廣,但是也不能使用接口測(cè)試替代客戶端測(cè)試。UI測(cè)試涉及到了用戶體驗(yàn)的問(wèn)題,這部分是無(wú)法用接口測(cè)試進(jìn)行替代的。
tcp/udp/http/restful/dubbo等協(xié)議區(qū)別與解讀
TCP協(xié)議是在傳輸層中,一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。對(duì)接口測(cè)試工具進(jìn)行分類,可以如下幾類:
- 網(wǎng)絡(luò)嗅探工具:tcpdump,wireshark
- 代理工具:fiddler,charles,anyproxyburpsuite,mitmproxy
- 分析工具:curl,postman,chrome Devtool
作為測(cè)試,要有對(duì)接口進(jìn)行測(cè)試的能力,在接口測(cè)試中,常用的第一個(gè)工具就是postman。postman是一個(gè)強(qiáng)大的接口測(cè)試平臺(tái),具有體驗(yàn)友好的可視化界面,在工作中常常作為研發(fā)的接口調(diào)試工具,以及測(cè)試的手動(dòng)接口測(cè)試工具。
可以進(jìn)入postman官方網(wǎng)站自行選擇系統(tǒng)下載安裝。postman官方網(wǎng)站:https://www.postman.com/
下面使用postman發(fā)送一次get請(qǐng)求。使用學(xué)院官方演練地址https://httpbin.testing-studio.com/,進(jìn)行演示
- 進(jìn)入postman軟件界面
- 在URL處填寫https://httpbin.testing-studio.com/get
- 選擇GET請(qǐng)求方式
- 點(diǎn)擊Header,key值填寫accept,value填寫application/json
- 點(diǎn)擊send按鈕,查看返回內(nèi)容
URL是一個(gè)通過(guò)URL傳輸數(shù)據(jù)的,功能強(qiáng)大的命令行工具。cURL可以與Chrome Devtool工具配合使用,把瀏覽器發(fā)送的真實(shí)請(qǐng)求還原出來(lái),附帶認(rèn)證信息,脫離瀏覽器執(zhí)行,方便開(kāi)發(fā)者重放請(qǐng)求、修改參數(shù)調(diào)試,編寫腳本。也可以單獨(dú)使用,根據(jù)自己的需求構(gòu)造請(qǐng)求調(diào)整參數(shù),構(gòu)造多種接口測(cè)試場(chǎng)景。
學(xué)習(xí)curl命令之前,需要先了解Chrome Devtool工具。
Chrome DevTools(Chrome 開(kāi)發(fā)者工具)是內(nèi)嵌在Chrome瀏覽器里的一組用于網(wǎng)頁(yè)制作和調(diào)試的工具。在測(cè)試的過(guò)程中,也常常用作一個(gè)簡(jiǎn)單的抓包工具。
如何操作
- 選擇右上角Chrome 菜單,然后選擇更多工具 -> 開(kāi)發(fā)者工具
- 或者右鍵,選擇檢查/審查元素
在 Network 面板中可以查看通過(guò)網(wǎng)絡(luò)來(lái)請(qǐng)求來(lái)的資源的詳細(xì)信息:
- 右鍵左側(cè)數(shù)據(jù),選擇Copy -> copy as curl,即可把請(qǐng)求內(nèi)容轉(zhuǎn)化為curl命令。
- 將命令copy在gitbash或bash上并運(yùn)行,則會(huì)看到返回信息。
- 對(duì)上面命令進(jìn)行細(xì)化,加入-v參數(shù)可以打印更詳細(xì)的內(nèi)容,用2>&1將標(biāo)準(zhǔn)錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出,發(fā)送此命令將得到細(xì)化后的內(nèi)容
細(xì)化后的命令如下
curl 'https://home.testing-studio.com/' -H \
'authority: home.testing-studio.com' -H 'pragma: no-cache'\
-H 'cache-control: no-cache' -H 'upgrade-insecure-requests: 1'\
-H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_0)\
AppleWebKit/537.36 (KHTML, like Gecko)\
Chrome/80.0.3987.116 Safari/537.36' \
-H 'sec-fetch-dest: document' \
-H 'accept: text/html,application/xhtml+xml,\
application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,\
application/signed-exchange;v=b3;q=0.9' \
-H 'sec-fetch-site: none' -H 'sec-fetch-mode: navigate' \
-H 'sec-fetch-user: ?1' \
-H 'accept-language: en,zh-CN;q=0.9,zh;q=0.8' \
--compressed -v 2>&1
發(fā)起get請(qǐng)求
curl"https://httpbin.testing-studio.com/get" -H "accept: application/json"
發(fā)起post請(qǐng)求
curl -X POST "https://httpbin.testing-studio.com/post" -H "accept: application/json"
proxy的使用
curl -x 'http://127.0.0.1:8080'$url
curl命令重要參數(shù)
通過(guò)幾個(gè)小實(shí)戰(zhàn)演練,了解一些常用參數(shù)的用法
- 篡改請(qǐng)求頭信息,將User-Agent改為”testing-studio“
curl -H "User-Agent:testing-studio""http://www.baidu.com" -v
可以看到請(qǐng)求中的User-Agent成功改為了testing-studio
* Trying 14.215.177.39...
* TCP_NODELAY set
* Connected to www.baidu.com (14.215.177.39) port 80 (#0)
> GET / HTTP/1.1
> Host: www.baidu.com
> Accept: */*
> User-Agent:testing-studio
- 在企業(yè)微信中通過(guò)curl命令創(chuàng)建標(biāo)簽,這是一個(gè)post請(qǐng)求,通過(guò)–data參數(shù)傳遞tagname和tagid
curl
-H "Content-Type: application/json" -X POST \
--data '{"tagname": "hogwarts","tagid": 13}' \
https://qyapi.weixin.qq.com/cgi-bin/tag/create?access_token=$token
- 認(rèn)證,通過(guò)put上傳到ElasticSearch,使用–user進(jìn)行用戶認(rèn)證
curl -X PUT "$ES_HOST/$index/_doc/$id?pretty" \
--user username:password \
-H 'Content-Type: application/json' \
-d "$content"
最后,在這我為大家準(zhǔn)備了一份軟件測(cè)試視頻教程(含面試、接口、自動(dòng)化、性能測(cè)試等),就在下方,需要的可以直接去觀看,也可以直接【點(diǎn)擊文末小卡片免費(fèi)領(lǐng)取資料文檔】?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-840279.html
【2024年最新版】字節(jié)大佬一周講完的自動(dòng)化測(cè)試教程,挑戰(zhàn)15天學(xué)完就業(yè),從入門到實(shí)戰(zhàn),少走99%的彎路!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-840279.html
到了這里,關(guān)于Chrome 瀏覽器+Postman做接口測(cè)試(全)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!