一,傳統(tǒng)和現(xiàn)在的接口測(cè)試的定義
1,傳統(tǒng)的接口測(cè)試的定義:集成測(cè)試的輸入--接口規(guī)格
2,現(xiàn)在的接口廣義化:
1),互聯(lián)網(wǎng)的產(chǎn)品整合
2),平臺(tái)供應(yīng)商
二,接口的類型
1,本地調(diào)用:比如開(kāi)發(fā)寫(xiě)了一個(gè)接口并進(jìn)行調(diào)用,然后以單元測(cè)試的形式測(cè)完,這個(gè)一般不需要太關(guān)注
2,遠(yuǎn)程調(diào)用(隨著項(xiàng)目越來(lái)越大,本地調(diào)用不太現(xiàn)實(shí),故變?yōu)檫h(yuǎn)程調(diào)用形式。不同語(yǔ)言實(shí)現(xiàn)方式不太一樣,基本都是通過(guò)socket來(lái)連接(IP地址+端口號(hào))
1),RMI調(diào)用(Java Remote Bean)
Java自帶遠(yuǎn)程調(diào)用機(jī)制,jmeter可以遠(yuǎn)程做壓力測(cè)試就是利用這個(gè)
2),JMS模式(消息機(jī)制Java Message Service)
接口不是調(diào)用類,而是進(jìn)行消息的傳遞,通過(guò)通訊來(lái)獲取要的消息
這兩種遠(yuǎn)程調(diào)用一般是開(kāi)發(fā)去做的
3),網(wǎng)絡(luò)標(biāo)準(zhǔn)協(xié)議(重點(diǎn)?。?/p>
(1),開(kāi)放式的,可以給第三方調(diào)用的接口,作為一個(gè)完整的產(chǎn)品開(kāi)放給客戶??梢詺w納到系統(tǒng)測(cè)試層面,這個(gè)是一個(gè)產(chǎn)品級(jí)別的,面向的是三方公司的程序員。
(2),和UI測(cè)試的區(qū)別:測(cè)試無(wú)法站在客戶角度去思考問(wèn)題,說(shuō)白了就是缺乏開(kāi)發(fā)知識(shí)
-標(biāo)準(zhǔn)的HTTP協(xié)議【重點(diǎn)】
- Soap協(xié)議【用得少!因?yàn)樾实?。因?yàn)閤ml格式傳輸字節(jié)數(shù)過(guò)多,結(jié)構(gòu)化太重】
標(biāo)準(zhǔn)HTTP協(xié)議基礎(chǔ)上的補(bǔ)充協(xié)議,底層仍是HTTP協(xié)議,就是多了個(gè)頭,http請(qǐng)求頭會(huì)加了個(gè)SoapAction的說(shuō)明。身體部分改造了一下,身體部分是xml/json/普通數(shù)據(jù),
- RESTful框架【主流!】
(1),不是網(wǎng)絡(luò)協(xié)議,只是寫(xiě)代碼的框架,和標(biāo)準(zhǔn)http協(xié)議沒(méi)有任何區(qū)別。比如用spring開(kāi)發(fā)和用php開(kāi)發(fā)的網(wǎng)頁(yè),從頁(yè)面是看不出區(qū)別的。開(kāi)發(fā)只是用restful框架去包裝訪問(wèn)格式。比如訪問(wèn)一個(gè)類,把類結(jié)構(gòu)看做是目錄結(jié)構(gòu)去訪問(wèn)。
(2),本質(zhì)是通過(guò)http協(xié)議去訪問(wèn)一個(gè)類
(3),因?yàn)閞estful訪問(wèn)類比較方便,比soap協(xié)議更簡(jiǎn)潔,傳遞消息更少,更省字節(jié)數(shù),故現(xiàn)在比較受歡迎,已經(jīng)取代soap協(xié)議