API代表應(yīng)用程序編程接口,用于通過使用任何通信模式來平滑兩個不同應(yīng)用程序之間的交互。每次您在智能手機(jī)上查看天氣或火車時間時,您都在使用 API,使您的智能手機(jī)應(yīng)用程序能夠從氣象局的應(yīng)用程序或火車運(yùn)營商的火車跟蹤和時間表系統(tǒng)中提取信息。
API 還有助于控制應(yīng)用程序不一定有權(quán)使用的硬件設(shè)備和軟件功能。這就是為什么 API 通常在安全性方面發(fā)揮重要作用的原因。
API是將移動應(yīng)用程序與真實設(shè)備集成的物聯(lián)網(wǎng)世界不可或缺的一部分。API 充當(dāng)粘合劑,幫助將設(shè)備、產(chǎn)品、設(shè)施、資產(chǎn)和其他對象與利用它們生成的數(shù)據(jù)的應(yīng)用程序連接起來。
物聯(lián)網(wǎng)中所有設(shè)備的集成都是關(guān)于 API 的——可互操作的邏輯連接,允許應(yīng)用程序與每個制造商的物聯(lián)網(wǎng)設(shè)備進(jìn)行通信。API 提供的數(shù)據(jù)使這些設(shè)備能夠?qū)?shù)據(jù)傳輸?shù)阶罱K應(yīng)用程序,充當(dāng)數(shù)據(jù)接口。此外,它們還可以允許最終應(yīng)用程序控制設(shè)備并用作功能接口。
為什么要測試 API?
由于 API 在數(shù)據(jù)方面至關(guān)重要,并且是應(yīng)用和設(shè)備之間的橋梁,因此需要對其進(jìn)行測試以確保正確表示數(shù)據(jù)。一個完美的工作API會帶來完美的工作應(yīng)用程序。測試 API 可以解決應(yīng)用程序中的許多問題,這些問題可能會在將來的某個時間點出現(xiàn)。有許多軟件可用于API測試,其中一個軟件是Postman。
使用郵遞員進(jìn)行 API 自動化測試:
Postman 是一個允許我們開發(fā)、使用和測試 Rest API 的平臺。它可作為Chrome的擴(kuò)展程序使用。
主要亮點:
Postman 允許創(chuàng)建集成測試集合,以確保 API 按預(yù)期工作。對于每個測試,都會發(fā)出一個HTTP請求,然后使用用javascript編寫的斷言來驗證代碼的完整性。
Postman 提供了斷言列表,由于測試和測試斷言是用 JavaScript 編寫的,我們可以自由地以不同的方式操作接收到的數(shù)據(jù),例如創(chuàng)建局部變量甚至創(chuàng)建循環(huán)來重復(fù)運(yùn)行測試
Postman 還允許我們將先前測試的數(shù)據(jù)存儲到全局變量中。這些變量可以像環(huán)境變量一樣使用。例如,有一個 API 需要從另一個 API 接收的數(shù)據(jù)。我們可以存儲響應(yīng)(或響應(yīng)的一部分,因為它是 JavaScript),并將其用作后續(xù) API 調(diào)用的請求標(biāo)頭、帖子正文或 URL 的一部分。
在Postman的幫助下,我們可以為一個環(huán)境編寫的代碼(斷言)重用到多個其他環(huán)境中
一旦開發(fā)出來,它不需要維護(hù),可以隨時驗證,無需任何更改
紐曼 CLI:
Postman 集合運(yùn)行器準(zhǔn)備就緒后,它需要導(dǎo)出集合并使用 Newman 從命令行執(zhí)行它。Newman 在執(zhí)行后發(fā)布了一些報告,該報告可以公平地了解 API 故障以及詳細(xì)信息。
主要亮點:
Newman 允許直接從命令行運(yùn)行和測試郵遞員集合
它是可擴(kuò)展的,因此我們可以輕松地將其與我們的持續(xù)集成服務(wù)器和構(gòu)建系統(tǒng)集成
它帶有一份報告,提供執(zhí)行的完整信息
一旦我們安裝了 Node.js,現(xiàn)在可以使用以下命令將 Newman 安裝在機(jī)器中:“npm install -g newman”。它可以進(jìn)一步擴(kuò)展,以使用“newman-reporter-htmlextra”接收精彩的報告,其中包括迭代運(yùn)行的分離而不是聚合在一起,還有一些額外的把手幫助器,使用戶能夠創(chuàng)建更好的自定義模板。
為了使用以下命令通過命令行觸發(fā)執(zhí)行:
“Newman Run ”APITests.postman_collection“ – environment ”ClearbladeTest.postman_environment“ -r htmlextra –reporter-htmlextra-title ”Newman Run Dashboard”。
下圖顯示了報表的儀表板:
使用 CI 執(zhí)行自動測試:
為了完成整個過程并使其從觸發(fā)到報告完全自動化,我們需要將該過程與稱為 Jenkins 的持續(xù)集成。當(dāng)開發(fā)代碼被部署時,它可以被測試,并且API測試的執(zhí)行可以通過Jenkins自動觸發(fā)。測試執(zhí)行報告將在郵箱中接收。
實時云 API 缺陷:
API自動測試將結(jié)果轉(zhuǎn)化為實時錯誤,這些錯誤可以在生產(chǎn)發(fā)布之前修復(fù),從而提高代碼效率并減少系統(tǒng)中的缺陷。例如。存在一個問題,即用戶無法從應(yīng)用程序中刪除位置/設(shè)備,并且之前通過 API 測試結(jié)果報告了該問題,這有助于我們保持代碼質(zhì)量和應(yīng)用程序質(zhì)量。
結(jié)論:
API 測試 自動化可實現(xiàn)兩個獨立軟件系統(tǒng)之間的通信和數(shù)據(jù)交換。實現(xiàn)API的軟件系統(tǒng)包含可由另一個軟件系統(tǒng)執(zhí)行的函數(shù)/子例程。它通過增加測試覆蓋率和頻率來幫助創(chuàng)建更強(qiáng)大和抗錯誤的程序。
審核編輯:郭婷
-
智能手機(jī)
+關(guān)注
關(guān)注
66文章
18516瀏覽量
180669 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2911文章
44855瀏覽量
375462 -
API
+關(guān)注
關(guān)注
2文章
1508瀏覽量
62241
發(fā)布評論請先 登錄
相關(guān)推薦
評論