什麼是介面測試
介面測試主要用於檢測外部系統與內部系統之間,以及系統內部各 個子系統之間的互動點。其測試的重點是,檢查資料的交換、傳遞和控 制管理過程,以及系統間的邏輯依賴關係等。
為什麼要做介面測試
1.傳統的測試方法成本急劇增加,且測試效率大幅下降 如今的系統複雜度不斷上公升,傳統的測試方法成本急劇增加,且測 試效率大幅下降,所以要做介面測試。
另外,介面測試相對容易實現自動化,且介面自動化也比較穩定, 可以減少人工測試的人力成本與時間,縮短測試週期,支援後端版本的 快速迭代。
2.可以發現很多頁面操作中發現不了的bug 如果在頁面中對輸入框做了「必填」限制,則使用者不輸入內容是不能 傳送請求和呼叫xcnvqsy介面的,這樣通過頁面進行測試受到的限制比較多,而 直接呼叫介面則跳過了頁面的限制。此時,如果介面沒有做限制,則可 以繞過前端頁面去請求伺服器,自然能發現很多頁面操作發現不了的 bug。
3.可以檢查系統的異常處理能力 舉例說明,在輸入框中輸入關鍵字進行搜尋,如果前端做了限制, 一旦輸入的關鍵字達到一定長度就會被程式設計客棧截斷了。而在該情況下,呼叫接 口是正常的,且呼叫介面可以傳很長的引數值。此時能發現一些介面層 面的bug。比如,介面可能會丟擲和資料庫表有關的日誌資訊,藉此能 看到資料庫表中的一些字段資料。
4.可以檢查系統的安全性、穩定性 舉例說明,比如在頁面的搜尋框中輸入特殊的sql注入語句進行搜 索時,發現前端會程式設計客棧過濾這些sql語句,那麼從前端頁面的角度來看這是 沒有問題的。
但是,如果介面沒有做類似的處理,一旦被他人獲取了接 口位址並實施sql注入,則會帶來嚴重的後果。所以,頁面要做測試, 介面更要做測試。 在前/後端分離時,只要前、後端嚴格按照介面協議來,一般情況 下,後端完成介面測試後便可保證業務邏輯的正確性,剩下的便是前端 如何展示的問題。所以,一般情況下都是後端先上線,前端再上線。
契約測試的必要性
測試是軟體流程中非常重要,不可或缺的乙個環節。一般的測試分為單元測試,整合測試,端到端的手工測試,這也是構成測試金字塔的三個層級。我們今天將要討論的話題是契約測試,它是處於單元測試和整合測試中間的乙個環節。這三個層級分別測試的場景如下 契約測試最開始的概念由martin fowler 提出,請參見這...
this的必要性
先看下面一段 lesson8 necessary of this class person show name public void showinfo class demo 8 1 this屬於乙個物件,代表的是物件,其實就是乙個物件的引用,只能在類定義的方法中使用。那麼它代表那個物件呢?答 哪個...
it 的必要性
for std vector iterator itlocal m vecsoftwareer.begin itlocal m vecsoftwareer.end else it 如上所示,c 98中map erase並沒有返回值為iterator的原型函式。那麼問題來了it map.erase i...