【編測編學】介面測試必備面試題必背(下)
1
、什麼是
DNS
?
DNS
是域名系統
(Domain Name System)
,
DNS
是用來做域名解析的
,
它會在你上網輸入網址後,把它轉換成
IP
,然後去訪問對方伺服器;沒有它,你想上百度就要記住百度的
IP
,但有了
DNS
的處理,你只需要記住對應網站的域名,即網址就可以了。
2
、請問你們公司是如何做介面測試的?
介面測試實際跟一般測試不同就是測試用例的設計部分。
①獲取介面文件。
②設計介面測試功能用例(主要從使用者角度出發看介面能否實現業務需求,用例設計就是黑盒用例那一套)。
③各種入參驗證(正常情況,異常情況包括輸入引數個數不對,型別不對,可選
/
必選,還有考慮引數有互斥或關聯的情況)。
④介面返回值各種驗證(符合介面文件需求)
⑤瞭解介面實現邏輯,實現邏輯覆蓋(語句
/
條件
/
分支
/
判定
/
…)
⑥介面能併發執行嗎、安全嗎,效能滿足要求嗎
?
⑦採用工具或者自寫程式碼來驗證。
⑧發現問題跟功能測試一樣,該提
bug
提
bug
,該跟蹤狀態的跟蹤狀態。
3
、怎麼設計介面測試用例?
①是否滿足前提條件
有些介面需要滿足前提,才可成功獲取資料。常見的,需要登入
Token
逆向用例:針對是否滿足前置條件(假設為
n
個條件),設計
0~n
條用例
②是否攜帶預設值引數
正向用例:帶預設值的引數都不填寫、不傳參,必填引數都填寫正確且存在的“常規”值,其他不填寫,設計
1
條用例
③業務規則、功能需求
這裡根據時間情況,結合介面引數說明,可能需要設計
N
條正向用例和逆向用例
④引數是否必填
逆向用例:針對每個必填引數,都設計
1
條引數值為空的逆向用例
⑤引數之間是否存在關聯
有些引數彼此之間存在相互制約的關係
⑥引數資料型別限制
逆向用例:針對每個引數都設計
1
條引數值型別不符的逆向用例
⑦引數資料型別自身的資料範圍值限制
正向用例:針對所有引數,設計
1
條每個引數的引數值在資料範圍內為最大值的正向用例
4
、你做介面測試,測什麼?
可用性測試
根據約定的協議、方法、格式內容,傳輸資料到介面經處理後返回期望的結果:
- 介面功能是否正確實現;
- 返回值測試 - 返回值除了內容要正確,型別也要正確,保證呼叫方能夠正確地解析;
- 引數值邊界值、等價類測試;
錯誤和異常處理測試
- 輸入異常值(空值、特殊字元、超過約定長度等),介面能正確處理,且按預期響應;
- 輸入錯誤的引數,介面能正確處理,並按預期響應;
- 多輸入、少輸入引數,介面能正確處理,且按預期響應;
- 錯誤傳輸資料格式(如 json 格式寫成 form 格式)測試;
安全性測試,主要指傳輸資料的安全性:
- 敏感資料(如密碼、秘鑰)等是否加密傳輸;
- 返回資料是否含有敏感資料,如使用者密碼、完整的使用者銀行賬號資訊等;
- 介面是否對傳入的資料做安全校驗,如身份 ID 加 token 類似校驗;
- 介面是否防止惡意請求(如大量偽造請求介面致使伺服器崩潰);
效能測試,如介面的響應時間、併發處理能力、壓測處理情況:
- 併發請求相同的介面(特別為 POST 請求),介面的處理情況(如插入了相同的記錄導致資料出錯,引發系統故障);
- 介面響應時長在使用者可忍受的範圍內;
- 對於請求量大的介面做壓測,確定最大的瓶頸點是否滿足當前業務需要;
5
、平常用什麼工具測介面的?
答:常用
http
協議介面測試工具,如:
postman
、
fiddler
、
jmeter
;
webService
介面用
SoapUI
、
jmeter
等。
6 、沒有介面文件,如何做介面測試?
用抓包工具把介面抓取處理,然後針對性進行測試;介面中欄位資訊不清楚的,找時間集中尋求開發解答。
7 、在手工介面測試或者自動化介面測試的過程中,上下游介面有資料依賴如何處理?
用一個全域性變數來處理依賴的資料,比如登入後返回 token ,其它介面都需要這個 token ,那就用全域性變數來傳 token 引數。
8
、依賴於第三方資料的介面如何進行測試?
mock
接著面試官會問你,如果
mock
的,然後你就順著坑繼續挖,搭建
mock
服務等
9 、介面測試中,依賴登入狀態的介面如何測試?
依賴登入狀態的介面的本質上是在每次傳送請求時需要帶上 session 或者 cookie 才能傳送成功,在構建 POST 請求時新增必要的 session 或者 cookie
10
、如何模擬弱網做測試?
Fiddler
和
charles
都可以模擬弱網測試,平常說的模擬丟包,也是模擬弱網測試。
11
、你平常做介面測試的過程中發現過哪些
bug?
常規錯誤,介面沒實現,沒按約定返回結果,邊界值處理出錯等。
輸入異常值(空值、特殊字元、超過約定長度等),介面拋錯,沒做封裝處理;
輸入錯誤的引數、多輸入、少輸入引數,介面可能出現的錯誤;
安全性問題,如明文傳輸、返回結果含有敏感資訊,沒對使用者身份資訊做校驗,沒做惡意請求攔截等;
效能問題,如介面併發插入多條相同操作,響應時間過長,介面壓測出現瓶頸等;
12
、當一個介面出現異常時候,你是如何分析異常的?
先抓包,用
fiddler
(
charles
)工具抓包,或者瀏覽器上
F12
除錯工具;
APP
上的話,那就用
Fiddler
做代理,透過手機設定代理去看請求和返回報文;
檢視後端日誌,如
Linux
系統透過
xhell
連上伺服器,檢視介面日誌,檢視是否有報錯資訊(命令:
tail -f
日誌檔案);
13
、如何分析一個
bug
是前端還是後端的?
這種情況很容易判斷,先抓包看請求報文,對著介面文件,看請求報文有沒問題,有問題就是前端發的資料不對;
請求報文沒問題,那就看返回報文,返回的資料不對,那就是後端開發的問題咯。
14 、你們做介面測試自動化嗎?
現在針對大量應用,普遍推崇做介面測試自動化,維護成本低、收益高。常用的工具有許多,如 Jmeter 、 Robot Framework 、 pytest 等。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69985967/viewspace-2750382/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【編測編學】介面測試必備面試題(上)面試題
- 【編測編學】自動化測試面試必背(下)面試
- 【編測編學】自動化測試面試必背(上)面試
- 如何編寫介面測試用例?測試工程師必備技能!工程師
- 初步瞭解URL(介面測試必備)
- 乾貨 | Dubbo 介面測試技術,測試開發進階必備
- 初級軟體測試必問面試題面試題
- 從0到1學習介面自動化測試必備知識!
- 全棧必備 測試基礎全棧
- 測試工程師必備:掌握這5種設計方法快速編寫測試用例~思路分析工程師
- 服務端測試開發必備技能:Mock測試服務端Mock
- 軟體測試必備 - 14個介面與自動化測試練習網站網站
- 開發必備之單元測試
- 軟體測試工程師必會的面試題目工程師面試題
- 【12】進大廠必須掌握的面試題-持續測試面試面試題
- 【編測編學】如何做好大資料測試大資料
- 【編測編學】軟體測試的就業如何?就業
- 軟體測試面試問題_介面測試(二)面試
- Web 端的測試 Selenium 用法必備Web
- 效能測試必備基礎知識(二)
- 12 款 JS 程式碼測試必備工具JS
- 軟體測試工程師必備技工程師
- 測試開發必備技能:安全測試漏洞靶場實戰
- 介面測試用例編寫和測試關注點
- 軟體測試面試必備的一些基礎理論概念面試
- 專案必備技術之單元測試
- 軟體測試面試必問的幾個問題,拿好標準答案,有備無患~面試
- 面試必備問題集錦面試
- 軟體相容性測試有什麼作用?相容性測試必備測試工具
- 推薦一款技術人必備的介面測試神器:ApifoxAPI
- 面試必備,Linux面試題和答案!Linux面試題
- 【編測編學】分享一套好用的功能測試用例編寫框架框架
- 測試必須學spring RESTful Service(上)SpringREST
- 測試必須學 spring RESTful Service (上)SpringREST
- Maven面試必備Maven面試
- 移動端效能測試必備工具 PerfDog 效能狗
- 測試人高效工作必備:如何提高溝通技能?
- mac必備的跑分測試工具:Geekbench 5 for MacMac