這8道接口測試面試題!你若是都答好,I want you!

接口測試常見的問題了。前端

你們乍一看!程序員

 

 

接口測試面試題面試

 

這幾個問題,能答出來幾個?有沒有8個都可以完美的答出來的?在留言區打出你的數字。(0~8)數據庫

這些問題你回答起來,不要吞吞吐吐只說幾個關鍵字。你要從多方面去給面試官總結分析那些場景,如何去作的,遇到的問題……後端

接口測試的重要性,相信不用我多說了。接口測試是如今軟件測試工程師一個加分項。由於不少朋友一開始作了幾年的軟件測試都是在作功能測試,作界面UI的測試,然而沒有作過接口測試。(很正常很廣泛)安全

那麼接口測試它在企業中,能達到很是好的收益。後端、服務端的測試,特別是如今!像是前面幾年,物聯網公司沒有作一個先後端分離,如今基本上都是微服務架構,先後端分離。接口很是重要,如今2020年了,將來幾年你去作測試,不少都是接口。服務器

一個接口它能夠支持安卓、IOS、H五、Web端。並且接口測試能夠測不少你在界面上沒法去測試的一些範圍和類型。微信

咱們來看一看這幾個問題,從簡單的來。架構

第一題,你們絕大部分都可以答得出來框架

1.目前市面上流行的接口大多有哪幾種協議的接口?

你們可能就很是瞭解,Http、Https、RPC、Websocket、還有一個Dubbo接口,這些類型百度一下也都可以比較全面的獲得答案。

因此我一直傳輸給你們一個觀念就是說,假如面試官問你這個問題,你不只要說有Http、Https……說完這幾種類型,你還能夠多說幾句,好比說我以前在項目中測試過Http的,怎麼測試的,用什麼測試工具測試的,這是我一直傳輸給你們的一個面試小技巧。由於我以前在企業中作爲面試官的時候,當聽到這種面試題回答的時候,會更加分。

由於若是我問你一個問題,你答Http、Https就沒了,那麼說明你這我的的積極性和你的一個綜合能力、見識都不是很是的亮眼突出。理解個人意思嗎?無論面試官問你什麼問題,你都要很是全面的去解答。

好比說第二個問題

 

2.http協議有什麼特色,能說說這些特色體如今哪些方面嗎?

可能會有朋友就說,安全。

Http就安全了嗎?(Https才相對安全)

a.無狀態

b.靈活

c.無鏈接

d.簡單快速

那麼我又來問你們,這些狀態這些特色,具體體如今哪些方面?

可能問到這個問題的後面部分,有些朋友就要頭皮發麻了。

它爲何叫作無狀態,爲何靈活?可能像這種問題就又刷下去了一大批人。有不少朋友特色可能說了一個,可是這些特色具體體如今哪些方面。你若是沒有答出來,那面試官就以爲你沒有作過不少的接口測試,你對接口根本不是很瞭解,那你對接口既然不瞭解,作過的測試也很少,那你還說你作過接口測試,那都只是片面的。

那首先它無狀態,靈活,說一個最簡單的。靈活,你們都知道,像Http類型的接口咱們用Postman來作測試,它爲何比較靈活?它支持的參數類型是任意類型

 

 

 

這個就是我以前搭建的接口項目

它來作測試的時候,這個參數類型,表單,文件上傳類型,還有JSON類型,Text文本,JS,XML,HTML

 

 

 

你的參數能夠支持任意類型

你的參數能夠支持任意類型,因此說它比較靈活。

那爲何說它簡單快速?你只須要傳一些接口的請求方法和請求路徑,通訊速度很是快,它就能給到你響應的數據。

好比說很簡單,我以前寫的一個demo接口

 

 

 

你只須要告訴我,這個地址和這個接口的路徑,或者說接口的名稱,我就能請求這個接口了,就能快速的拿到下面的值。那是否是說它很是的簡單快速呢,不像Dubbo接口不像Websocket,不像其餘的接口,稍微你要去測試,去請求可能難一點。這就說明它簡單快速。

無狀態。好比說你如今要去支付一筆訂單,你要點一個外賣,那麼你支付訂單的時候,那麼我怎麼知道你的購物車裏面加了哪些東西呢?其實你加購物車、下訂單、登陸其實都是相應的接口,他們之間實際上是沒有一個實物處理記憶能力的,Http協議它請求成功以後沒有記憶了。因此說你每次去請求新的接口,它都有一個新的請求,那麼爲何如今這種下單、登陸加購物車可以很是靈活的應用起來呢?這就還有它中間的一些機制,會用到一些Session、Cookie、和一些Token,因此這就是它的一個原理。

那麼無鏈接。怎麼理解?

那我本身的一個項目來講吧!這是以前搭建的一個測試項目管理平臺

 

 

 

 

 

那麼每次咱們去請求的時候,Network刷新一下,它可能去請求了不少個接口,因此說每次鏈接它只處理一個請求。服務端當處理其中一個接口的時候,它只請求這一個,請求完以後,它就立刻斷開鏈接,節省這個傳輸的時間,因此這是一個無鏈接。

因此這些特色體如今哪些方面,你能說一說的話,說明你對這個接口你比較有心得了。有收穫記得點贊支持一下!

 

3.postman中如何實現接口之間的關聯?

 

我想這個可能還不是最難的問題,可能你們用過,像第二個問題比較綜合性的每每是你們比較薄弱的東西。

 

 

 

 

好比說這是一個正規的接口文檔,有哪些接口就用Postman所有寫一遍,而後如何接口之間的關聯,這裏會用到這些東西。

 

 

 

 怎麼設置關聯,將數據解析成Json格式,獲取topic_id的值,設置成環境變量,等等。這就能實現接口之間的關聯。

 

 

 

而後你在這裏會發現,這裏有不少環境變量或者全局變量,這就是接口之間的關聯。

5.若請求的接口須要先登陸後方可請求,如何進行接口測試?

好比說有些接口須要先登陸才請求,那如何來進行接口測試?先登陸,好比我問你這個問題你怎麼來回答?

由於不少須要請求的接口它須要先認證才能去請求。

Token?

這個回答不對,Token從哪裏來?你須要去請求什麼樣的接口,你的登陸接口或者去哪裏去拿到,這個問題仍是比較簡單的,你們能夠作爲做業區用心學習一下。

7.dubbo接口如何測試?

那咱們來看看像這種Dubbo如何去進行測試?這個有了解過嗎?由於如今愈來愈多的公司可能不只用Http他還會用到Dubbo接口。dubbo接口是咱們(用的阿里雲服務器)阿里巴巴開源的一個高性能的服務框架,Dubbo是經歷過雙十一的一個摧殘優秀的RPC框架,不少公司都在用了,可是你又沒有據說過,額,怎麼還會有這個接口啊?你聽都沒有據說過,那麼你在面試官那裏……由於面試的公司頗有可能就是作的Dubbo接口,那你來作接口測試,你連Dubbo都不知道,那我是否是又要培養你一個月?告訴你什麼是Dubbo,怎麼測試Dubbo,還說讓你來作Dubbo接口自動化,那更加。就算招你進去了,你也是一個新手,菜鳥的身份進去的,你的工資是很難提上去的。

好比他工資原本開的是15K-20K,那麼就算你能面試進去了,你最多最多拿到15K。那還要看你的運氣,看你其餘方面的一個加分項,來抵消這個暫時的短板。

面試官:什麼是Dubbo?

我:我、我、我抓一抓後腦勺,摸摸手臂,扣一扣指甲。

而後就是說……吞吞吐吐答不出來(心裏獨白:到底何時結束這個面試,你趕快把簡歷還給我吧,QAQ)

我還準備去下一家公司去「吹牛皮」也許下一家公司面試官不會問到我不會的問題。

你們不要抱着這樣的心態,我發現作測試真的這樣一個現狀,不少朋友就以爲能混,我如今作功能測試不用任何的技術,能拿個7.8K,一萬的工資,也能夠。至少要比其餘的行業的底薪是要高一些。

因此就存在這個現象,他不會不少的技術,沒有不少的技能他也能混,或者運氣好,在一線城市需求多。爲何不少測試在一線城市可以拿到10-15K,他不會任何的技術,由於一線城市的需求多不少。

可是你想要突破,想突破15K,突破18K那就難上加難了,並且若是你從大城市工做三到五年,你再回去到二線城市去作測試,那麼你還想來混,那麼你的工資就可能只有5-6K了,並且你沒有任何的技術,你說你從大城市回來的,都以爲有點很差意思說。

你從大城市回來的,你帶回來了什麼先進的概念,帶來了什麼先進的技術,是否是?

說遠了,迴歸正題。

文章首發於公衆號:程序員一凡

轉載請註明出處!

 

.

 

Dubbo的一個測試關鍵,搭建消費者,你須要去理解的Dubbo接口的基礎架構基礎服務究竟是一個什麼樣的原理。(有一個接口測試訓練營有講到這個原理以及如何去測試,須要視頻教程能夠免費領取)

 

 

 

 我在這個服務器上搭建了一個Dubbo服務

 

 

 

最簡單的方式用,Telnet,個人IP地址,而後加一個端口,其實測試起來和Http原理都同樣。

開啓服務以後,進去以後就是一個Dubbo

咱們還能夠用代碼來寫

 

 

 

 這裏封裝了一個Dubbo的方法,類。須要完整視頻版教學能夠公衆號主頁點擊領取資料便可。

8.接口測試斷言從哪些方面去設計?

若是我把這個接口測試改爲功能測試,功能測試斷言從哪些方面去設計?

你要怎麼去校驗一個測試用例,我以爲這個是不少作測試的朋友最擅長的東西,那麼我問接口測試呢?

 

其實接口測試也屬於功能測試,也是黑盒測試。

 

 

 好比說這個接口,我去發送一個請求,你怎麼去校驗這個接口,我怎麼去判斷我這個用例究竟是不是對的,我這個用例究竟是驗證了什麼東西

 

 

到底什麼是401,什麼狀況下會401,或者是403 Forbidden究竟是什麼狀況。

1.狀態碼

它會不會返回200,會不會返回401,403,返回500等等

2.返回值

返回值好比我拿一個正確的吧,狀態碼200,返回了一大堆的值,那麼這個返回值裏面就有不少東西須要去校驗了,怎麼去校驗這個返回值?

 

 

 

3.並且返回值裏面不少數據是動態的,這個時候要怎麼去設置?要考慮數據庫校驗吧,不少字段的值來源於數據庫

非關係型數據庫(Mongo)

4.空校驗,異常校驗,

5.冪等性

冪等性的校驗在接口測試是一個常見的校驗,好比說你一個接口我調用一次正常了,你能保證它以後調用都是正常的嗎?這些數據、參數幾百個不一樣類型的參數,我調用一百次,會是一個什麼樣的狀況?

冪等性,我重複執行一百次,它會返回什麼。

或者我去買一個外賣,下單,可是我不支付,是否是我點擊下單一百次,它會不會產生不少垃圾數據在咱們數據庫裏面。

其實還有不少須要你去測試的,爲何接口測試這麼重要,要測試的東西和功能測試同樣方方面面都是須要考慮到的。

6.流程節點限制

舉一個異常例子吧,好比說你在支付的時候,我只下單沒有付錢,那麼像這個接口的返回值。我先調用下單的接口,我拿到一些數據再去調用別人正常支付後的接口。會是一個什麼樣的場景,有沒有作一些限制。

接口測試很容易作一個數據驅動,作一些自動化,咱們都要去儘量的全面的覆蓋作一個接口自動化,那麼你的效益是很是高的。並且你把這一套所有作成自動化,不論是後端開發人員仍是前端開發人員仍是測試,你在企業中本人價值也是很是高的。

若是面試官以爲你答對了,再深刻一點,什麼是異常校驗?就是來評判你能不能達到一個高級測試工程師。

異常校驗

數據異常,環境異常,前置條件異常,你們都知道作過接口測試的朋友都知道接口有不少的前置條件,前置條件鏈接數據庫或者數據的預製,那麼這些前置條件有沒有異常致使咱們接口異常。

因此像這種問題,你若是沒有真實的項目經驗,你絕對總結不出來也回答不出來。

文章首發於公衆號:程序員一凡

轉載請註明出處!

願你我相遇,皆有所獲! 歡迎關注微信公衆號:程序員一凡 1.免費領取一份216頁軟件測試工程師面試寶典文檔資料。 2.軟件測試學習路線以及相對應的視頻學習教程免費分享!
相關文章
相關標籤/搜索