日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

接口测试如何测

發(fā)布時(shí)間:2025/3/12 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 接口测试如何测 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

接口測試如何測

一.什么是接口?

接口測試主要用于外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個(gè)子系統(tǒng)之間的交互點(diǎn),定義特定的交互點(diǎn),然后通過這些交互點(diǎn)來,通過一些特殊的規(guī)則也就是協(xié)議,來進(jìn)行數(shù)據(jù)之間的交互。

二.接口都有哪些類型?

接口一般分為兩種:
1.程序內(nèi)部的接口
2.系統(tǒng)對外的接口

系統(tǒng)對外的接口:比如你要從別的網(wǎng)站或服務(wù)器上獲取資源或信息,別人肯定不會把數(shù)據(jù)庫共享給你,他只能給你提供一個(gè)他們寫好的方法來獲取數(shù)據(jù),你引用他提供的接口就能使用他寫好的方法,從而達(dá)到數(shù)據(jù)共享的目的。

程序內(nèi)部的接口:方法與方法之間,模塊與模塊之間的交互,程序內(nèi)部拋出的接口,比如bbs系統(tǒng),有登錄模塊、發(fā)帖模塊等等,那你要發(fā)帖就必須先登錄,那么這兩個(gè)模塊就得有交互,它就會拋出一個(gè)接口,供內(nèi)部系統(tǒng)進(jìn)行調(diào)用。

接口的分類:
1.webservice接口
2.http api接口

webService接口是走soap協(xié)議通過http傳輸,請求報(bào)文和返回報(bào)文都是xml格式的,我們在測試的時(shí)候都用通過工具才能進(jìn)行調(diào)用,測試。

http api接口是走h(yuǎn)ttp協(xié)議,通過路徑來區(qū)分調(diào)用的方法,請求報(bào)文都是key-value形式的,返回報(bào)文一般都是json串,有g(shù)et和post等方法,這也是最常用的兩種請求方式。

json是一種通用的數(shù)據(jù)類型,所有的語言都認(rèn)識它。(json的本質(zhì)是字符串,他與其他語言無關(guān),只是可以經(jīng)過稍稍加工可以轉(zhuǎn)換成其他語言的數(shù)據(jù)類型,比如可以轉(zhuǎn)換成Python中的字典,key-value的形式,可以轉(zhuǎn)換成JavaScript中的原生對象,可以轉(zhuǎn)換成java中的類對象等。)

三.接口的本質(zhì)及其工作原理是什么?

接口你可以簡單的理解他就是URL,工作原理就會說URL通過get或者post請求像服務(wù)器發(fā)送一些東西,然后得到一些相應(yīng)的返回
值,本質(zhì)就是數(shù)據(jù)的傳輸與接收。

四.什么是接口測試?

接口測試是測試系統(tǒng)組件間接口的一種測試。接口測試主要用于檢測外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個(gè)子系統(tǒng)之間的交互點(diǎn)。測試的重點(diǎn)是要檢查數(shù)據(jù)的交換,傳遞和控制管理過程,以及系統(tǒng)間的相互邏輯依賴關(guān)系等。

-百度百科
簡答的說就是通過URL像服務(wù)器或者其他模塊等,傳輸我們想傳輸?shù)臄?shù)據(jù),然后看看他們返回的是不是我們預(yù)期想要的。

五.為什么要做接口測試?

①.越底層發(fā)現(xiàn)bug,它的修復(fù)成本是越低的。

②.前端隨便變,接口測好了,后端不用變,前后端是兩撥人開發(fā)的。

③.檢查系統(tǒng)的安全性、穩(wěn)定性,前端傳參不可信,比如京東購物,前端價(jià)格不可能傳入-1元,但是通過接口可以傳入-1元。

④.如今的系統(tǒng)復(fù)雜度不斷上升,傳統(tǒng)的測試方法成本急劇增加且測試效率大幅下降,接口測試可以提供這種情況下的解決方案。

⑤. 接口測試相對容易實(shí)現(xiàn)自動化持續(xù)集成,且相對UI自動化也比較穩(wěn)定,可以減少人工回歸測試人力成本與時(shí)間,縮短測試周期,支持后端快速發(fā)版需求。接口持續(xù)集成是為什么能低成本高收益的根源。

⑥. 現(xiàn)在很多系統(tǒng)前后端架構(gòu)是分離的。

從安全層面來說:
(1)、只依賴前端進(jìn)行限制已經(jīng)完全不能滿足系統(tǒng)的安全要求(繞過前面實(shí)在太容易), 需要后端同樣進(jìn)行控制,在這種情況下就需要從接口層面進(jìn)行驗(yàn)證。

(2)、前后端傳輸、日志打印等信息是否加密傳輸也是需要驗(yàn)證的,特別是涉及到用戶的隱私信息,如身份證,銀行卡等。

六.怎樣做接口測試?

由于我們項(xiàng)目前后端調(diào)用主要是基于http協(xié)議的接口,所以測試接口時(shí)主要是通過工具或代碼模擬http請求的發(fā)送與接收。工具有很多如:postman、jmeter、soupUI、java+httpclient、robotframework+httplibrary等。

-也可以用 接口自動化來實(shí)現(xiàn),就是用代碼實(shí)現(xiàn),框架和UI自動化差不多,發(fā)送請求用斷言來判斷。

七.其他相關(guān)知識

get請求,post請求的區(qū)別:
1、GET使用URL或Cookie傳參。而POST將數(shù)據(jù)放在BODY中。

2、GET的URL會有長度上的限制,則POST的數(shù)據(jù)則可以非常大。

3、POST比GET安全,因?yàn)閿?shù)據(jù)在地址欄上不可見。

4、一般get請求用來獲取數(shù)據(jù),post請求用來發(fā)送數(shù)據(jù)。

其實(shí)上面這幾點(diǎn),只有最后一點(diǎn)說的是比較靠譜的,第一點(diǎn)post請求也可以把數(shù)據(jù)放到url里面,get請求其實(shí)也沒長度限制,post請求看起來參數(shù)是隱式的,稍微安全那么一些些,但是那只是對于小白用戶來說的,就算post請求,你通過抓包也是可以抓到參數(shù)的。(唯一區(qū)別就是這一點(diǎn),上面3點(diǎn)區(qū)別都是不準(zhǔn)確的)

http狀態(tài)碼:
1、200 2開頭的都表示這個(gè)請求發(fā)送成功,最常見的就是200,就代表這個(gè)請求是ok的,服務(wù)器也返回了。

2、300 3開頭的代表重定向,最常見的是302,把這個(gè)請求重定向到別的地方了。

3、400 400代表客戶端發(fā)送的請求有語法錯誤,401代表訪問的頁面沒有授權(quán),403表示沒有權(quán)限訪問這個(gè)頁面,404代表沒有這個(gè)頁面。

4、500 5開頭的代表服務(wù)器有異常,500代表服務(wù)器內(nèi)部異常,504代表服務(wù)器端超時(shí),沒返回結(jié)果。

webservice接口怎么測試:

它不需要你在拼報(bào)文了,會給一個(gè)webservice的地址,或者wsdl文件,直接在soapui導(dǎo)入,就可以看到這個(gè)webservice里面的所有接口,也有報(bào)文,直接填入?yún)?shù)調(diào)用,看返回結(jié)果就可以了。

cookie與session的區(qū)別:
1、cookie數(shù)據(jù)存放在客戶的瀏覽器上,session數(shù)據(jù)放在服務(wù)器上。

2、cookie不是很安全,別人可以分析存放在本地的cookie并進(jìn)行cookie欺騙考慮到安全應(yīng)當(dāng)使用session。

3、session會在一定時(shí)間內(nèi)保存在服務(wù)器上。當(dāng)訪問增多,會比較占用你服務(wù)器的性能考慮到減輕服務(wù)器性能方面,應(yīng)當(dāng)使用cookie。

4、單個(gè)cookie保存的數(shù)據(jù)不能超過4K,很多瀏覽器都限制一個(gè)站點(diǎn)最多保存20個(gè)cookie。

5、所以個(gè)人建議:
將登陸信息等重要信息存放為session
其他信息如果需要保留,可以放在cookie中

總結(jié)

以上是生活随笔為你收集整理的接口测试如何测的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。