1睛廊、接口測(cè)試的意義(優(yōu)勢(shì))
(1)更早的發(fā)現(xiàn)問(wèn)題:
不少的測(cè)試資料中強(qiáng)調(diào)调卑,測(cè)試應(yīng)該更早的介入到項(xiàng)目開(kāi)發(fā)中,因?yàn)樵皆绲陌l(fā)現(xiàn)bug衙解,修復(fù)的成本越低阳柔。
然而功能測(cè)試必須要等到系統(tǒng)提供可測(cè)試的界面才能對(duì)系統(tǒng)進(jìn)行測(cè)試。
而接口測(cè)試可以在功能界面開(kāi)發(fā)出來(lái)之前對(duì)系統(tǒng)進(jìn)行測(cè)試蚓峦。
系統(tǒng)接口是上層功能的基礎(chǔ)舌剂,接口測(cè)試可以更早更低成本的發(fā)現(xiàn)和解決問(wèn)題。
然而暑椰,在實(shí)際的開(kāi)發(fā)過(guò)程中霍转,開(kāi)發(fā)人員并沒(méi)有充足的時(shí)間去編寫(xiě)單元測(cè)試,并且他們往往對(duì)自己編寫(xiě)的代碼有足夠的信心一汽,不愿意將“浪費(fèi)”時(shí)間在編寫(xiě)單元測(cè)試上面避消。
這個(gè)時(shí)候接口測(cè)試的作用就會(huì)變得更加重要低滩。
(2)縮短產(chǎn)品研發(fā)周期:
對(duì)于產(chǎn)品研發(fā)周期來(lái)說(shuō),如果將所有測(cè)試工作都集中在功能測(cè)試階段岩喷,那么測(cè)試的問(wèn)題和修復(fù)周期就會(huì)變長(zhǎng)恕沫。
因?yàn)闇y(cè)試可以更早的介入產(chǎn)品開(kāi)發(fā)中,所以可以有效的控制功能測(cè)試階段bug的數(shù)量纱意,從而有效的縮短產(chǎn)品開(kāi)發(fā)周期婶溯。
(3)發(fā)現(xiàn)更底層的問(wèn)題:
系統(tǒng)的有些底層邏輯是在UI功能測(cè)試中不太容易觸發(fā)的,那么這些邏輯可能會(huì)存在問(wèn)題偷霉。接口測(cè)試可以更容易更全面的測(cè)試到這些底層的邏輯迄委。
(4)檢查服務(wù)器的異常處理能力:
我們通常把前端的驗(yàn)證稱(chēng)為弱驗(yàn)證,因?yàn)樗苋菀妆焕@過(guò)类少,這個(gè)時(shí)候如果只站在功能的層面進(jìn)行測(cè)試叙身,就很難發(fā)現(xiàn)一些安全的問(wèn)題。
而不以功能為入口的接口測(cè)試就會(huì)很容易的驗(yàn)證這些異常情況硫狞。
比如訂單接口是不允許重復(fù)提交的信轿。
有些接口還要考慮性能問(wèn)題。
比如購(gòu)物車(chē)?yán)镉卸鄠€(gè)商品妓忍,全部勾選后去支付, 會(huì)判斷商品庫(kù)存虏两,這時(shí)候能提交成功嗎,處理邏輯又是什么?
-
安全性測(cè)試:
服務(wù)端提供API世剖, 接口調(diào)用方在客戶(hù)端定罢,之間的通訊暴露在公網(wǎng)上,如果有不善意的用戶(hù)抓包獲取了支付接口旁瘫,用1元價(jià)格購(gòu)買(mǎi)到了100元商品祖凫,這是非常危險(xiǎn)的,這就是安全性測(cè)試的一個(gè)方面酬凳。
SQL注入等也屬于這類(lèi)惠况。
2、UI測(cè)試與接口測(cè)試對(duì)比
(1)UI測(cè)試特點(diǎn):
一般互聯(lián)網(wǎng)公司宁仔,最大的特點(diǎn)就是快稠屠,產(chǎn)品需要不停的迭代,迭代時(shí)間基本在15天左右翎苫。
UI自動(dòng)化測(cè)試的優(yōu)點(diǎn)是权埠,能夠?qū)嶋H模擬真實(shí)用戶(hù)的行為,直接驗(yàn)證軟件的商業(yè)價(jià)值煎谍,缺點(diǎn)是用例的維護(hù)和執(zhí)行代價(jià)很大攘蔽。
另外,UI自動(dòng)化測(cè)試的穩(wěn)定性問(wèn)題呐粘,是長(zhǎng)期以來(lái)阻礙UI測(cè)試發(fā)展的重要原因满俗。
在快速迭代的情況下(如不停的更新活動(dòng)界面)转捕,頁(yè)面的改動(dòng)可能會(huì)很頻繁,而UI自動(dòng)化測(cè)試本身基于頁(yè)面元素唆垃,前端小小的改動(dòng)可能需要測(cè)試的非常大的改動(dòng)五芝。
所以總結(jié)如下:
web應(yīng)用和APP迭代速度非常快辕万。
頁(yè)面更新頻繁与柑。
測(cè)試成本高于效益。
可交付于第三方進(jìn)行測(cè)試(云測(cè)蓄坏、眾測(cè))。
(2)接口測(cè)試特點(diǎn):
針對(duì)服務(wù)端后臺(tái)測(cè)試丑念,接口規(guī)則一旦確定涡戳,后期的變化非常的小。
相對(duì)于變化頻繁的UI來(lái)說(shuō)脯倚,接口測(cè)試的性?xún)r(jià)比更高渔彰。
這就成為了企業(yè)內(nèi)重點(diǎn)測(cè)試的對(duì)象,我們都知道服務(wù)端中保存著用戶(hù)數(shù)據(jù)推正、業(yè)務(wù)數(shù)據(jù)恍涂、交易數(shù)據(jù)等。倘若任何一個(gè)接口實(shí)現(xiàn)有問(wèn)題植榕,都會(huì)影響所有用戶(hù)再沧。
正是由于服務(wù)端數(shù)據(jù)和業(yè)務(wù)邏輯關(guān)系著企業(yè)的命脈,所以極少會(huì)有企業(yè)把接口交于第三方測(cè)試尊残。
作為測(cè)試人員炒瘸,我們需要驗(yàn)證的是接口間數(shù)據(jù)傳遞的正確性和完整性。
參考: