Smart Mock 是 Apidog 的自動 Mock 資料生成功能。它根據您的 API 規範建立逼真的 Mock 回應,無需任何配置。只需定義您的 API 規範,Apidog 就會為您智慧生成適當的 Mock 資料。在這篇文章中,我們將學習如何將 Smart Mock 用於 Pet Store API。
1. 什麼是 Smart Mock?#
Smart Mock 透過分析您的 API 規範自動生成 Mock 資料。它識別常見的欄位名稱並生成適當的資料——無需手動配置。為什麼使用 Smart Mock?#
始終有效:遵守您的 JSON Schema 以確保有效的回應
2. 如何使用 Smart Mock#
讓我們看看 Smart Mock 如何與 Pet Store API 一起運作:步驟 1:打開端點#
1.
在您的 Apidog 專案中打開 Pet Store API
2.
導航到一個端點(例如 GET /pets/{id})
步驟 2:存取 Mock 分頁#
1.
點擊 "Mock" 分頁(或切換到 DEBUG 模式並找到 Mock 部分)
步驟 3:複製並使用 Mock URL#
2.
URL 看起來像這樣:http://127.0.0.1:4523/m1/{project-id}/0/pets/{id}
步驟 4:檢視 Mock 回應#
Mock 伺服器將返回 Smart Mock 生成的資料。例如:{
"id": "pet_123",
"name": "Buddy",
"species": "DOG",
"breed": "Golden Retriever",
"ageMonths": 24,
"status": "AVAILABLE",
"adoptionFee": 150.00
}
每次您重新整理或發出新請求時,Smart Mock 都會在遵守 Schema 約束的同時生成新資料。
3. Smart Mock 如何生成資料#
Smart Mock 使用智慧名稱匹配來生成適當的資料。它識別常見的欄位名稱並生成逼真的值。自動名稱識別#
name, firstName, lastName → 生成人名
phone, phoneNumber → 生成電話號碼
price, amount, cost → 生成貨幣值
createdAt, updatedAt → 生成時間戳
範例:Pet Store API#
在 Pet Store API 的 GET /pets/{id} 回應中:name → Smart Mock 生成寵物名字如 "Buddy" 或 "Luna"
species → 生成物種值如 "DOG" 或 "CAT"
breed → 生成品種名稱如 "Golden Retriever"
status → 生成狀態值如 "AVAILABLE"
如果欄位名稱不匹配任何模式,Smart Mock 根據欄位類型(字串、數字、布林值等)生成預設值。
4. 自訂特定欄位#
有時您想控制特定欄位,同時讓 Smart Mock 處理其餘部分。您可以使用回應 Schema 中的 Mock 欄位來做到這一點。設定固定值#
範例:對於 status 欄位,您可以將其設定為 "AVAILABLE" 以始終返回此狀態。使用動態值#
您也可以使用 Faker.js 表達式來生成動態資料:{{$person.fullName}} → 生成隨機全名
{{$internet.email}} → 生成隨機電子郵件地址
{{$number.int(min=1,max=100)}} → 生成範圍內的數字
範例:對於 name 欄位,您可以使用 {{$person.firstName}} 來生成隨機名字。當您在 Mock 欄位中設定值時,它會覆蓋 Smart Mock 對該特定欄位的自動生成。
5. JSON Schema 約束#
Smart Mock 遵守您的 JSON Schema 中定義的所有約束。這確保了生成的資料始終有效。常見約束#
Enum 值:如果欄位有特定的允許值,Smart Mock 將從中選擇一個範例:如果 status 有 enum ["AVAILABLE", "PENDING", "ADOPTED"],Smart Mock 返回其中一個值
Min/Max 值:具有 min/max 約束的數字欄位生成這些邊界內的值範例:如果 ageMonths 有 minimum: 1 和 maximum: 240,Smart Mock 生成 1 到 240 之間的年齡
字串長度:具有長度約束的字串欄位生成這些限制內的字串
陣列大小:具有項目計數約束的陣列欄位生成具有適當元素數量的陣列
6. 關鍵重點#
Smart Mock 從您的 API 規範自動生成 Mock 資料
Mock 欄位 允許您自訂特定欄位,同時對其餘部分使用 Smart Mock
JSON Schema 約束 確保所有生成資料有效
易於使用——只需複製 Mock URL 並開始使用
Smart Mock 讓開始 API Mocking 變得容易。只需定義您的 API 規範,Apidog 就會自動生成逼真的 Mock 資料。在下一篇文章中,我們將學習 Mock Expectations——如何建立帶有條件的自訂 Mock 回應。 Modified at 2025-12-29 09:35:19