text: 介面測試是軟體測試的一種，它包括兩種測試型別：狹義上指的是直接針對應用程式介面的功能進行的測試；廣義上指整合測試中，透過呼叫API測試整體的功能完成度、可靠性、安全性與效能等指標。API的呼叫沒有使用者圖形介面操作，是一種發生在資訊層的測試， 在由於敏捷開發廣泛應用而使得GUI經常有變化的當下，利用GUI執行大批次自動化測試幾乎不可能，因而針對相對穩定不變的API進行的測試有著極高的重要性，將其自動化也是一個很重要的工作。API測試概述.API測試包括直接針對API本身進行的測試和將API置於實際應用環境，將API與其服務的使用者邏輯一同進行整合測試兩種。 此類測試包括針對表現層狀態轉換，以及 企業資源計劃等相關係統的測試。API測試的執行者除開發此API的開發人員外，還包括使用此API構建應用程式的人。API測試用於測試API收到合理引數，被呼叫後是否能夠以預期的格式返回正確的結果。在測試中尤其需要關注API對是否能夠作出適當的處理：比如對一個不合理的輸入丟擲合適錯誤、對極端的輸入也能夠在可以接受的響應時間內給出正確應答或是能夠妥善應對潛在安全攻擊。 虛擬化則是在API測試中常用的一種模擬廣泛使用者場景的方法。API測試，GUI測試和測試自動化.相比於GUI測試，業界廣泛認為API測試更適合應用自動化測試和連續測試方法。 原因如下：由於這些原因，API被認為是待測系統中最穩定的介面，開發人員應當減輕他們對GUI測試的依賴，更多的向API測試中投入精力。將API測試自動化的一大優點便是測試覆蓋面可以變得非常大，絕大多數的測試都可以自動化，這樣更多的邊緣就能被測試覆蓋到，可以有效地減輕邊緣缺陷造成的軟體問題。 這樣之後，也可以保留一部分GUI測試來針對系統級典型使用者場景進行遷移、可用性的測試。API測試應用場景.API測試通常應用在下列測試當中：單元測試.在計算機程式設計中，單元測試中的方法。通常來說，程式設計師每修改一次程式就會進行最少一次單元測試，在編寫程式的過程中前後很可能要進行多次單元測試，以證實程式達到軟體規格書要求的工作目標——沒有程式錯誤。功能測試.功能測試是一種質量保證流程，是一種基於測試用例的軟體元件規範的黑盒測試。在這種測試當中，被測函式是透過檢查輸入和輸出是否合理來測試的，很少考慮內部程式結構。它是一種比單元測試規模更大的的測試，針對由多個單元構成的某一特定功能進行的測試， 包括測試用例的定義、執行、驗證和迴歸測試。負載測試.負載測試有時稱為極限測試構建。然而，其他軟體也可能需要進行負載測試。例如，文字處理器或圖形編輯器可能遇到讀取非常大文件的情況；而一個金融方案可能會被要求按照總共幾年以上的資料生成一份報告。因此負載測試廣泛應用於各中軟體的開發中。負載測試最好模擬實際使用情況直接進行測試，而不是使用理論或分析模型“模擬”。執行錯誤檢測.執行錯誤指的是儘管程式可以透過編譯開始執行，但是在執行過程中發生異常，提前退出程式。最常見的是指標越界，開啟檔案失敗繼續讀取檔案，資源洩露等。總而言之是讓計算機執行一些不能執行的語句時丟擲的錯誤。安全測試.包括 滲透測試 和 模糊測試 以及驗證認證、加密和訪問控制API執行是否正常等測試內容，。網頁UI測試.是整合測試的一部分，也涵蓋API測試的內容。互操作性測試.互操作性的能力。系統工程設計方面常常會用到這條術語。透過測試在不同環境下呼叫API時，API給出的功能反饋是否符合預期來測試待測系統的相容性則是互操作性測試側重的內容。Web服務規範測試.測試待測系統是否符合WS-*規範。滲透測試.滲透測試是指一個具備資安知識與經驗、技術人員受僱主所託，為僱主的網路裝置、主機，模擬駭客的手法對網路或主機進行攻擊測試，為的是發掘系統漏洞、並提出改善方法。這種攻擊通常是出於善意的。對於API而言，這種測試則指的是透過滲透手段測試某個API中是否有可以利用漏洞。模糊測試.模糊測試 強制輸入到API中以試圖引起系統崩潰、記憶體溢位或者其他負面情形來測試API應對“最壞的情況”時的極限處理能力。
metadata: erhwenkuo/wikipedia-zhtw
metadata: 介面測試
metadata: https://zh.wikipedia.org/wiki?curid=6674793