自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

接口測(cè)試系列文章之接口測(cè)試的核心概念

開發(fā) 后端
我相信絕大多數(shù)測(cè)試同學(xué)聽聞“接口”二字都源于開發(fā)同學(xué)。書本中的標(biāo)準(zhǔn)接口定義叫Interface,在JAVA編程語言中接口是一個(gè)抽象類型,是抽象方法的集合,接口通常以interface來聲明。一個(gè)類通過implements關(guān)鍵字實(shí)現(xiàn)接口,從而來重寫接口中的抽象方法。

開發(fā)口中的接口是什么?

我相信絕大多數(shù)測(cè)試同學(xué)聽聞“接口”二字都源于開發(fā)同學(xué)。書本中的標(biāo)準(zhǔn)接口定義叫Interface,在JAVA編程語言中接口是一個(gè)抽象類型,是抽象方法的集合,接口通常以interface來聲明。一個(gè)類通過implements關(guān)鍵字實(shí)現(xiàn)接口,從而來重寫接口中的抽象方法。

[[356343]]

例如:

  1. interface Animal { 
  2.  
  3. public void eat(); 
  4.  
  5. public void travel(); 
  6.  
  7.  
  8. class Cat implements Animal { 
  9.  
  10. public void eat() { 
  11.  
  12. // TODO Auto-generated method stub 
  13.  
  14.  
  15. public void travel(){ 
  16.  
  17. // TODO Auto-generated method stub 
  18.  
  19.  

 而實(shí)際工作中開發(fā)同學(xué)常常掛在嘴邊的接口并不是理論上的接口interface,通常通過以下面兩種方式體現(xiàn):

1.就是一個(gè)http請(qǐng)求

例如:http://host:port/getAllPeople

這個(gè)請(qǐng)求就是一個(gè)接口,當(dāng)你發(fā)送這個(gè)url后,會(huì)從服務(wù)器端收到請(qǐng)求。服務(wù)端的核心代碼是,有一個(gè)方法來判斷url是什么,如果匹配到getAllPeople,則調(diào)用相關(guān)的方法,例如getAllPeople(){//具體實(shí)現(xiàn)代碼}

2.就是不通過http請(qǐng)求,直接調(diào)用方法getAllPeople(){//具體實(shí)現(xiàn)代碼}

而對(duì)于我們測(cè)試人員最為關(guān)注的是第一種方式,即通過http請(qǐng)求調(diào)用后端服務(wù)代碼,因?yàn)闇y(cè)試同學(xué)代碼相對(duì)薄弱,直接通過代碼調(diào)用的方式進(jìn)行接口測(cè)試難度較高,另外好多公司的研發(fā)代碼是絕對(duì)保密的,研發(fā)團(tuán)隊(duì)以外的人很難獲取代碼。

為什么近年接口測(cè)試這么火爆呢?

傳統(tǒng)的開發(fā)模式轉(zhuǎn)變,從過去的瀑布到如今的敏捷;

移動(dòng)互聯(lián)網(wǎng)的普及,用戶頁面需求變更頻繁,但是服務(wù)端接口相對(duì)穩(wěn)定;

微服務(wù)的興起,好多服務(wù)根本沒有供測(cè)試人員的UI可點(diǎn),我們只能對(duì)服務(wù)端進(jìn)行接口測(cè)試。

常見的接口類型

  • HTTP接口,
  • RPC接口,
  • Web Service接口,
  • Dubble接口,
  • RESTful接口,

其中RESTful接口是基于HTTP接口的,Web Service及Dubble屬于RPC接口。目前HTTP接口是最核心也是應(yīng)用最廣泛的接口!

接口測(cè)試的核心測(cè)試點(diǎn)

校驗(yàn)接口參數(shù)是否達(dá)到要求(邊界、業(yè)務(wù)規(guī)則)

校驗(yàn)接口返回?cái)?shù)據(jù)的正確性與格式

校驗(yàn)接口覆蓋率是否達(dá)到要求(一般要求核心接口要達(dá)到100%的測(cè)試率,非核心接口根據(jù))

性能指標(biāo)是否滿足要求(接口的響應(yīng)時(shí)間、處理能力)

安全指標(biāo)是否滿足要求(一般接口都不會(huì)暴露在網(wǎng)上任意被調(diào)用,需要做一些限制,比如鑒權(quán)或認(rèn)證。)

接口測(cè)試較UI測(cè)試的優(yōu)勢(shì)

1.接口測(cè)試相對(duì)容易實(shí)現(xiàn)自動(dòng)化持續(xù)集成,且相對(duì)UI自動(dòng)化也比較穩(wěn)定

2.測(cè)試可以更早的介入(具體的時(shí)間點(diǎn)應(yīng)該是在后臺(tái)接口開發(fā)基本完畢之后,需要模塊間進(jìn)行接口聯(lián)調(diào)的時(shí)候)

3.可以發(fā)現(xiàn)功能測(cè)試覆蓋不到的服務(wù)端問題

接口測(cè)試開展的四個(gè)步驟

1.確認(rèn)接口文檔的準(zhǔn)確性,這是接口測(cè)試通過與否的標(biāo)準(zhǔn)

2.準(zhǔn)備接口測(cè)試數(shù)據(jù)

3.構(gòu)建接口

代碼選擇java的httpclient jar包或者python的requests模塊

工具選擇postman、jmeter等

4.校驗(yàn)接口請(qǐng)求,在成功調(diào)用接口后,獲取接口的響應(yīng)數(shù)據(jù),根據(jù)接口文檔來判斷接口測(cè)試的通過與否

做好接口測(cè)試必備的知識(shí)點(diǎn)

了解OSI網(wǎng)絡(luò)模型,TCP/UDP協(xié)議,掌握HTTP/HTTPS協(xié)議,了解RPC, Web Service及REST,理解Session和Cookie;

掌握常用的接口測(cè)試工具Postman,Jmeter,SoupUI等;

掌握基本的抓包工具如Chrome開發(fā)者工具,Fiddler,Wireshark等;

掌握一門編程語言Python或Java;

了解Nginx, Apache, Tomcat等服務(wù)器中間件;

掌握數(shù)據(jù)庫基本查詢命令,及Redis操作,用于檢查響應(yīng)結(jié)果;

掌握基本的Linux日志查詢和篩選命令。

總結(jié)

其實(shí)接口測(cè)試開展的順利與否,技術(shù)并不占主要因素(核心技術(shù)就是我講的這么多,你會(huì)了就可以從事接口測(cè)試了)。個(gè)人覺得溝通才是接口測(cè)試成敗的核心,因?yàn)榻涌跍y(cè)試的開展以及接口文檔的編寫需要開發(fā)人員大量的配合,這是極其需要溝通技巧的!(溝通問題不是本文的討論范圍)

 

責(zé)任編輯:姜華 來源: 今日頭條
相關(guān)推薦

2020-12-14 11:26:25

接口測(cè)試python

2020-12-29 10:16:24

接口測(cè)試flaskmock

2011-04-18 10:46:39

接口測(cè)試

2023-10-04 00:14:00

WebSocket網(wǎng)絡(luò)協(xié)議

2020-08-23 12:27:39

測(cè)試接口技巧

2021-02-04 07:12:15

測(cè)試excelapi

2022-05-27 07:28:05

jmeter接口測(cè)試

2021-01-27 11:32:12

接口測(cè)試代碼

2022-08-30 08:01:22

Apifox自動(dòng)化測(cè)試

2023-09-07 10:26:50

接口測(cè)試自動(dòng)化測(cè)試

2020-05-27 08:05:33

MybatisMapper接口

2021-12-30 07:33:03

數(shù)據(jù)庫

2020-11-05 18:30:32

接口測(cè)試

2022-06-22 09:41:16

接口異常測(cè)試

2022-08-29 08:21:00

k8sDocker

2023-09-11 15:35:25

2016-04-01 10:11:52

2020-11-18 09:37:44

微服務(wù)

2009-09-24 10:40:19

Hibernate核心

2022-09-05 17:28:25

k8sNode IPClusterIP
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)