什么是API
API是Application Programming Interface的簡(jiǎn)寫。
實(shí)現(xiàn)了兩個(gè)或多個(gè)獨(dú)立系統(tǒng)或模塊間的通信和數(shù)據(jù)交換能力丙躏。
什么是API測(cè)試
API測(cè)試是不同于UI級(jí)自動(dòng)化測(cè)試谤饭,其主要關(guān)注在系統(tǒng)架構(gòu)的業(yè)務(wù)邏輯層止毕,所以其主要關(guān)注不在于UI操作或用戶感觀上套才,更重調(diào)用邏輯關(guān)系。
與UI級(jí)自動(dòng)化測(cè)試通過控制鍵盤輸入和鼠標(biāo)等操作不同的是:API測(cè)試辱揭,我們是通過工具或代碼方式去調(diào)用特定的API离唐,獲取輸出,并記錄系統(tǒng)的響應(yīng)问窃。
API測(cè)試需要與應(yīng)用程序的API進(jìn)行交互亥鬓,為了測(cè)試這些API,我們可以:
- 使用測(cè)試工具來進(jìn)行測(cè)試
- 自己寫代碼的方式進(jìn)行測(cè)試
API測(cè)試準(zhǔn)備工作
首先你得獲取目標(biāo)測(cè)試系統(tǒng)的API相關(guān)文檔泡躯,例如API對(duì)應(yīng)的參數(shù)格式贮竟、期望返回結(jié)果等(一由開發(fā)提供文檔,二自己抓包分析)
就我們所處國內(nèi)的實(shí)際情況较剃,在大部分情況下,開發(fā)都沒有成型的文檔技健。所以作為測(cè)試人員写穴,你應(yīng)該具備以下技能:
- 優(yōu)先去推動(dòng)開發(fā)生成一份合適的API說明文檔
- 掌握抓包分析工具,能夠自己去抓包分析形成API文檔
- 至少把http協(xié)議掌握雌贱,了解其報(bào)文結(jié)構(gòu)
- 對(duì)用戶業(yè)務(wù)熟悉啊送,能把API級(jí)業(yè)務(wù)邏輯和用戶業(yè)務(wù)結(jié)合起來
API主要測(cè)試什么
API級(jí)測(cè)試至少應(yīng)該覆蓋以下測(cè)試要點(diǎn):
驗(yàn)證API所暴露的資源是否恰當(dāng)?shù)牧谐觥?chuàng)建欣孤、修改馋没、和刪除
驗(yàn)證API是否功能可用以及用戶友好,是否便于與其他平臺(tái)集成
安全測(cè)試降传,驗(yàn)證API是否包含了必要的認(rèn)證以及敏感數(shù)據(jù)是否做了脫敏處理篷朵,是否支持加密或明碼的http訪問
自動(dòng)化測(cè)試,將API高度業(yè)務(wù)場(chǎng)景化婆排,實(shí)現(xiàn)自動(dòng)化測(cè)試
文檔声旺,形成足夠的文檔,確保API質(zhì)量的可維護(hù)行
API測(cè)試要注意什么
在API測(cè)試過程中要重點(diǎn)關(guān)注什么呢段只?
API測(cè)試用例要進(jìn)行分類分組
每個(gè)API測(cè)試用例都應(yīng)該參數(shù)化
在測(cè)試執(zhí)行時(shí)腮猖,優(yōu)先執(zhí)行API測(cè)試
測(cè)試用例應(yīng)該盡可能做到可獨(dú)立執(zhí)行
為了確保覆蓋率,應(yīng)該為API的所有可能輸入進(jìn)行測(cè)試數(shù)據(jù)規(guī)劃
API測(cè)試能發(fā)現(xiàn)什么bug
在API測(cè)試時(shí)赞枕,一般會(huì)發(fā)現(xiàn)哪類型的bug呢澈缺?
無法正確處理錯(cuò)誤的深入條件
缺少或重復(fù)功能
可靠性問題
安全問題
多線程問題
性能問題
響應(yīng)數(shù)據(jù)結(jié)構(gòu)不規(guī)范問題
有效參數(shù)值不能正確處理
API測(cè)試有哪些工具
- SoapUI
- JMeter
- PostMan
- 自己寫代碼
其他工具不推薦了坪创,筆者首推SoapUI或自己寫代碼
API測(cè)試你可能遭遇哪些大坑
無效的測(cè)試數(shù)據(jù)規(guī)劃,導(dǎo)致你的參數(shù)窮舉組合
因?yàn)闆]有界面姐赡,開發(fā)又不提供文檔的情況下莱预,大部分人無從下手,會(huì)一臉懵逼
平時(shí)測(cè)試大都關(guān)注正常的正常的情況雏吭,但要注意異常處理API必須進(jìn)行測(cè)試锁施,你懂的
代碼你要會(huì)點(diǎn)代碼,會(huì)點(diǎn)HTTP協(xié)議杖们,不然沒法溝通交流
總結(jié)
把日常接口測(cè)試工作進(jìn)行了大概的總結(jié)悉抵,希望對(duì)入門接口測(cè)試的朋友們有點(diǎn)效果,沒效果那也沒辦法了摘完,只能這樣了姥饰。