API 沙盒虛擬化顧客教育

甚麼是沙盒虛擬化?

API 沙盒虛擬化是一項模擬即時沙盒事例之行為的服務。我們的虛擬化服務能提供持續如一的體驗,您所收到的回應經過預先定義,不會總是因應您提供的具體輸入值而出現差異。

例子如下。假設您以相同的運費要求打出多個電話,每次測試都會更改寄件人和收件人地點。無論地址如何變更,API 都會傳回相同的預先定義運費回覆。儘管數值可能不符,但是回覆結構將模擬您在即時環境中收到的回覆。

由於虛擬化服務不會觸及即時後端系統組件,因此您的整合測試將得到後端依賴的保護,與此同時您仍將得到適當的回應。

為何要將 FedEx 沙盒虛擬化?

在 FedEx 等互相依存的複雜環境中,當依賴的資源變得不可用時,事例就會變少,導致系統供應情況堪憂。發生這些事件時,即使屬於遙距性質,仍可能對您的 API 整合測試造成不良影響。即時事例亦存在其他限制,同樣可能使您的整合測試程度受限。例子包括:

  • 託運帳戶沒有所需的存取權限,以測試指定的具體情景。
  • 測試數據可用性有限。
  • 預定或非預定的系統停機。

您能如何使用虛擬化沙盒事例?

  • 請熟悉 API 說明文件、端點和授權方式。這有助設計出有效的測試。
  • 下載並熟悉 API 說明文件所提供的「JSON API 系列」。
  • 挑選並測試符合您使用情景的範例交易。為帶來一致的體驗,請避免更改要求數據結構,以便您能收到虛擬化回應。
  • 請注意:並非所有輸入的值都會影響回應。請關注了解您的應用程式如何處理一致的回應。
  • 根據說明文件,測試所有 API 的行為是否正確。同時納入正面或負面的測試案例。
  • 使用所提供的負面測試案例,了解如何傳回錯誤訊息及狀態代碼。這有助判斷您的應用程式如何管理錯誤。請參閱添加了「負面」前綴的 JSON API 系列和測試案例。

虛擬化的好處

  • 避免無法提供資源的風險。
  • 減少對測試數據的依賴。
  • 回應比即時沙盒事例更快。
  • 特別服務無需明確的帳戶層級存取。
  • 流暢無阻的整合體驗,促進測試及認證的流程。

常見問答

  1. 我如何取得要求數據以處理虛擬化回應?
    每份 API 說明文件都已提供 JSON API 系列。請瀏覽「API 目錄」並打開 API 說明文件。在 API 說明文件中,尋找「JSON API 系列」部分。該 JSON API 系列部分列出了能檢索虛擬化回應的所有已儲存之要求數據。
  2. 我是否需要令牌來存取虛擬化沙盒事例?
    是,令牌產生和授權將按既有形式運作,您應就與虛擬化沙盒服務互動的每宗交易提供令牌。
  3. 我如何判斷回應是否自虛擬化服務傳回?
    虛擬化回應會在數據中加入以下警示。

  4. 在運費及運輸時間 API 中,為何我的地址在要求數據中無法得到驗證?
    地址驗證並非是建立虛擬化運費回應的一部分。系統只會驗證國家/地區,因此您可於餘下的地址欄位使用任何值。
  5. 所有 API 都會虛擬化嗎?
    迄今,僅下列 API 已虛擬化。我們會陸續將其餘 API 功能虛擬化。
運費及運輸時間 API 已虛擬化
貨件查詢 API 已虛擬化
貨運 LTL API – 運費及收件功能 已虛擬化
驗證地址 API 已虛擬化
驗證郵區編號 API 已虛擬化
收件要求 API 已虛擬化
服務選項 API 已虛擬化
全球貿易 API 已虛擬化
Ground End of Day Close API 已虛擬化
Open Ship API 已虛擬化
託運 API 已虛擬化
FedEx 服務站搜尋 API 已虛擬化