我剛剛使用PHP Slim Framework創建了一個REST API。但是,我想知道測試這個API的最佳方法是什麼。最好是使用PHP或Objective-c(它將在哪裏使用)或者通過一些在線服務來測試它,從而允許您測試REST API?所有輸出都以JSON格式。測試REST API的最佳方法是什麼?
回答
正如@Martin所說,正確實施的REST獨立於客戶端(假設它支持您的表示類型)。因此,例如,您可以使用Firefox的Poster加載項或RestClient 2.3。
你可以通過https://chrome.google.com/webstore/detail/cdjfedloinmbppobahmonnjigpmlajcd# – corretge
找到海報的chrome端口哈哈,謝謝,我使用的是Safari :) –
總有好的ol捲曲,其中包括在Mac OSX和Linux中,並且具有到Windows的端口(http://curl.haxx.se/)。如果您想編寫代碼以進行可重複測試,您可以將其寫入任何您想要的內容(只要您可以發出HTTP請求)。關鍵是,REST API應該獨立於客戶端。如果它不是獨立於客戶端,請使用Objective-C進行測試,並可選擇與某人討論它是否真的是RESTful。 – jhericks
一個好的REST API應該獨立於最終客戶端。因此,在一種情況下進行測試,應該假定它在所有使用相同端點,HTTP動詞和參數的情況下都能正常工作。
它有一個非常漂亮的用戶界面。所有HTTP方法都受支持。它甚至允許基本和OAuth身份驗證並存儲以前的請求。
theRightAPI有一個免費的工具,讓您測試任何基於HTTP API調用。然後,您可以保存這些測試以與其他人共享,或者如果您稍後需要返回以重新測試並確保API繼續按預期做出響應。它還有一個令牌存儲器,允許您在多個測試中使用憑證或身份驗證密鑰的單個副本。
所以我useually使用一些不同的工具來測試我自己/外部API的。
postman是在Google Chrome中運行的HTTP和REST客戶端。
Mocha是Node.js和JavaScript項目的測試框架。 (鏈接似乎是下降atm)
Nock是一個HTTP嘲笑庫,可以記錄HTTP調用並播放它們,以便您可以手動模擬API,或者只是記錄實際的HTTP調用,並使用它們的響應未來的測試運行。
摩卡和諾克是更具體的JavaScript,但沒有理由爲什麼你不能使用它們的基於PHP的API的
>沒有理由不能使用基於PHP的API。 我正在考慮使用Mocha和Chai來測試使用PhalconPhp構建的REST api。有沒有潛在的缺點? – Raunaqss
由於RESTful API中是非常流行的,有大量的工具來測試它們。所以最好的做法是選擇一個(或多個)這些工具,而不是浪費時間和精力創建大量自己的測試腳本/過程。
您可以檢查以下資源,可以幫助你選擇最合適的工具:
您可以使用「高級REST客戶端」 chorem應用。
我測試過的最好的工具。
- 1. 測試Rails REST XML API的最佳方式是什麼?
- 2. 測試Catalyst REST API的最簡單方法是什麼
- 3. 測試API用戶認證的最佳方法是什麼?
- 4. 爲REST API編寫單元測試的最佳方式是什麼?
- 5. 單元測試異步方法的最佳方法是什麼?
- 6. 設置和測試Lambda API的最佳方式是什麼?
- 7. 用Rspec測試DELETE請求的最佳方法是什麼?
- 8. 測試activeadmin類的最佳方法是什麼?
- 9. 使用rSpec測試delayed_job鏈的最佳方法是什麼?
- 10. 在QUnit中測試SyntaxError異常的最佳方法是什麼?
- 11. 測試GWT本地化的最佳方法是什麼?
- 12. 測試WebdriverIO「瀏覽器」對象的最佳方法是什麼?
- 13. 什麼是測試序列化的最佳方法?
- 14. 測試服務器版本的最佳方法是什麼?
- 15. 測試命令行工具的最佳方法是什麼?
- 16. 用H2數據庫測試JPA的最佳方法是什麼?
- 17. 什麼是單元測試構造函數的最佳方法?
- 18. 用Lab來測試HapiJS插件的最佳方法是什麼?
- 19. 測試Cassandra應用程序的最佳方法是什麼?
- 20. 什麼是測試Silverlight 5類庫的最佳方法?
- 21. 什麼是測試字符串的最佳方法?
- 22. 測試方法內部方法的最佳方法是什麼? (JUnit)
- 23. 什麼是使用RSpec請求規範測試JSON API的最佳方法
- 24. 在開發機器上測試sendgrid解析API的最佳方法是什麼?
- 25. 保護REST API的最佳方式是什麼?
- 26. 什麼是自動執行REST api的最佳方式
- 27. 從angularjs調用Rest API的最佳方式是什麼?
- 28. 什麼是生成REST API文檔的最佳方式?
- 29. 存儲xunit測試加載的測試用例的最佳方法是什麼?
- 30. 測試Sinatra REST API方法
你在找什麼樣的測試? – hakre