Apidog Dynamic Values 利用 Faker.js v9.0.0-rc.1 提供具決定性、支援地區設定的測試資料;這些資料可產生一次並在多個請求中重複使用,消除撰寫腳本的額外負擔,同時保留與現有 Faker 表達式的完整相容性。完整的動態值程式庫#
為了方便參考,Apidog 提供每個動態值類別的範例文件,並對應 Faker.js 的結構:Apidog Dynamic Values 的主要增強功能#
以下是讓 Apidog Dynamic Values 更強大且更易於使用的主要變更:1. 簡化的表達式語法,方便存取#
Faker.js: faker.finance.accountName()
Apidog: {{$finance.accountName}}
只要在 Apidog 中輸入 {{%,即可觸發自動完成並輕鬆探索可用的動態值。2. 針對物件與陣列最佳化輸出#
Apidog 透過為原本在 Faker.js 中回傳物件或陣列的方法回傳 JSON 字串,簡化資料處理,讓你能直接存取特定值。範例 1:擷取機場資料#
Faker.js: faker.airline.airport() 會回傳一個物件:範例 2:處理多個日期#
Faker.js: faker.date.betweens() 會回傳一個陣列:Apidog: 回傳 JSON 字串化的陣列,方便直接進行資料處理:如需調整後方法及其參數的 完整概覽,請參閱 Apidog 文件。
3. 增強的地區設定控制#
Apidog 針對產生特定地區資料,提供增強的 Locale 設定控制:函式層級設定: 為每個動態值函式個別定義 Locale 設定。
專案層級預設值: 為整個 Apidog 專案設定預設 Locale。
日期格式覆寫: 在日期相關函式中使用 format 方法, 以套用特定 Locale 的格式覆寫。
4. 常見使用情境的預設參數#
Apidog 透過為常用方法提供預設參數(可依需求自訂)來提升效率:{{$helpers.fromRegExp('[A-Z0-9]{4}-[A-Z0-9]{4}')}} // 產生符合正規表示式的字串
{{$helpers.arrayElement(['abc','123'])}} // 從陣列中隨機選取一個元素
{{$helpers.arrayElements(['abc','123'])}} // 從陣列中選取多個隨機元素
{{$helpers.replaceSymbols('##??**')}} // 以隨機字元取代特殊符號
{{$helpers.slugify('abc 123')}} // 產生適合用於 URL 的 slug
5. 擴充的動態值程式庫#
Apidog 透過新的類別與方法,強化你的資料產生能力:新類別:food 用於產生多樣化的食物相關資料。範例:{{$food.vegetable}}
{{$date.timeZone}} 用於產生時區資料。
{{$music.album}} 用於建立逼真的音樂專輯名稱。
{{$music.artist}} 用於產生藝人名稱。
{{$phone.number(style='human')}} 用於產生人類可讀的電話號碼,例如:(555) 123-4567。
{{$number.int(multipleOf=3)}} 用於產生可被指定數字整除的整數。
6. 無限制串接#
Apidog 提供極致彈性,允許你不受限制地無縫結合模擬資料與動態值,進而建立豐富且逼真的測試情境。7. 擴充的日期功能#
Apidog 為日期相關函式擴充了格式化、偏移計算等新參數,以滿足多樣且複雜的測試需求。