ทำความเข้าใจและเชี่ยวชาญตัวแปรใน Apidog

Oliver Kingsley

Oliver Kingsley

19 September 2025

ทำความเข้าใจและเชี่ยวชาญตัวแปรใน Apidog

ตัวแปรช่วยให้คุณกำหนดชื่อให้กับค่าและนำกลับมาใช้ใหม่ได้ทุกที่ที่คุณต้องการ

ตัวอย่างเช่น แทนที่จะวาง API token ที่เปลี่ยนแปลงบ่อยครั้งลงในทุกๆ request คุณสามารถกำหนดตัวแปรเช่น ACCESS_TOKEN และใช้ {{ACCESS_TOKEN}} ใน request ของคุณ เมื่อโทเค็นหมดอายุ ให้อัปเดตตัวแปรเพียงครั้งเดียว และ request ทั้งหมดที่ใช้ตัวแปรนั้นจะรับค่าใหม่โดยอัตโนมัติ

เรียกใช้ตัวแปรใน Apidog

ประเภทของตัวแปรโดยสรุป

Apidog รองรับตัวแปรหลายประเภท ซึ่งแต่ละประเภทออกแบบมาสำหรับสถานการณ์เฉพาะ คุณสามารถใช้: ตัวแปรส่วนกลางระดับทีม, ตัวแปรส่วนกลางระดับโปรเจกต์, ตัวแปรโมดูล, ตัวแปรสภาพแวดล้อม, ตัวแปรข้อมูลทดสอบ และตัวแปรโลคัล

ตัวแปรส่วนกลาง

ตัวแปรส่วนกลางช่วยให้คุณสามารถแบ่งปันข้อมูลได้อย่างกว้างขวาง มีสองประเภท:

ตัวแปรส่วนกลางระดับโปรเจกต์: จำกัดเฉพาะโปรเจกต์ปัจจุบัน เหมาะสำหรับการส่งข้อมูลระหว่าง request ในโปรเจกต์เดียวกัน ตัวอย่างเช่น จัดเก็บโทเค็นจาก login endpoint เป็นตัวแปรส่วนกลางระดับโปรเจกต์ จากนั้นนำกลับมาใช้ใหม่ใน request อื่นๆ ภายในโปรเจกต์นั้น

ตัวแปรส่วนกลางระดับโปรเจกต์

ตัวแปรส่วนกลางระดับทีม: ใช้ร่วมกันในทุกโปรเจกต์ในทีม เหมาะสำหรับการทำงานร่วมกันข้ามโปรเจกต์ ตัวอย่างเช่น หากบริการยืนยันตัวตนออกโทเค็นที่ใช้โดยหลายโปรเจกต์ ให้จัดเก็บเป็นตัวแปรส่วนกลางระดับทีม

ตัวแปรส่วนกลางระดับทีม

หมายเหตุสิทธิ์: สมาชิกทั่วไปสามารถดูและเปลี่ยนค่าปัจจุบันของตัวแปรส่วนกลางระดับทีมที่มีอยู่เท่านั้น พวกเขาไม่สามารถเพิ่ม/ลบตัวแปรหรือเปลี่ยนชื่อได้ เฉพาะผู้ดูแลระบบทีมเท่านั้นที่สามารถจัดการตัวแปรระดับทีมได้อย่างสมบูรณ์ใน Team Resources → Variables

ตัวแปรโมดูล

ตัวแปรโมดูลถูกกำหนดขอบเขตเฉพาะโมดูล หากคุณนำเข้า Postman Collection ตัวแปรคอลเลกชันของมันจะถูกนำเข้าเป็นตัวแปรโมดูลของ Apidog

เหมาะสำหรับการกำหนดค่าเฉพาะโมดูล ตัวอย่างเช่น โปรเจกต์อาจมีโมดูลแยกต่างหากสำหรับผู้ใช้ คำสั่งซื้อ และผลิตภัณฑ์ ซึ่งแต่ละโมดูลสามารถเก็บการกำหนดค่าของตนเองไว้ในตัวแปรโมดูลได้

ตัวแปรโมดูล

ตรวจสอบให้แน่ใจว่า Apidog เป็นเวอร์ชันล่าสุดเพื่อใช้ตัวแปรโมดูล

ตัวแปรสภาพแวดล้อม

ตัวแปรสภาพแวดล้อมน่าจะเป็นประเภทที่คุณใช้บ่อยที่สุด ช่วยให้คุณสลับระหว่างสภาพแวดล้อมได้โดยไม่ต้องเปลี่ยนการกำหนดค่าสำหรับแต่ละ request

ตัวแปรสภาพแวดล้อม

ในทางปฏิบัติ คุณมักจะมีสภาพแวดล้อมหลายอย่าง (local, test, staging, production) แต่ละสภาพแวดล้อมมีที่อยู่เซิร์ฟเวอร์ การเชื่อมต่อฐานข้อมูล หรือการกำหนดค่าของบุคคลที่สามที่แตกต่างกัน ด้วยตัวแปรสภาพแวดล้อม คุณสามารถสลับไปมาระหว่างสภาพแวดล้อมเหล่านี้ได้ทันที

หมายเหตุ: สามารถเปิดใช้งานสภาพแวดล้อมได้เพียงหนึ่งเดียวในแต่ละครั้ง เมื่อคุณเลือกสภาพแวดล้อม ตัวแปรทั้งหมดที่กำหนดไว้ในนั้นจะมีผล

สลับระหว่างตัวแปรสภาพแวดล้อม

ตัวแปรข้อมูลทดสอบ

ตัวแปรข้อมูลทดสอบช่วยขับเคลื่อนการทดสอบที่ขับเคลื่อนด้วยข้อมูล เมื่อคุณต้องการทดสอบ endpoint เดียวกันด้วยชุดข้อมูลจำนวนมาก นี่คือสิ่งที่คุณต้องการ

เตรียมไฟล์ CSV หรือ JSON ที่มีหลายแถว (หรือออบเจกต์) ในสถานการณ์การทดสอบอัตโนมัติ ให้นำเข้าไฟล์ และ Apidog จะวนซ้ำแต่ละแถวเป็นชุดตัวแปรหนึ่งชุดและดำเนินการทดสอบสำหรับแต่ละแถว

นำเข้าไฟล์ CSV หรือ JSON เข้าสู่ Apidog

ตัวแปรโลคัล

ตัวแปรโลคัลมีอายุการใช้งานสั้นที่สุด—มีผลเฉพาะระหว่าง request เดียวหรือการรันการทดสอบเท่านั้น พวกมันจะหายไปหลังจากดำเนินการ

เนื่องจากตัวแปรโลคัลมีลำดับความสำคัญสูงสุด จึงเหมาะสำหรับการแทนที่ตัวแปรประเภทอื่นชั่วคราว ตัวอย่างเช่น สภาพแวดล้อมของคุณกำหนด user_id แต่สำหรับการทดสอบพิเศษหนึ่งครั้ง คุณต้องการค่าที่แตกต่างกัน—ให้ตั้งค่าตัวแปรโลคัลที่มีชื่อเดียวกันแทนที่จะเปลี่ยนสภาพแวดล้อม

ลำดับความสำคัญของตัวแปร

เมื่อตัวแปรหลายตัวมีชื่อเดียวกัน Apidog จะแก้ไขตามลำดับความสำคัญ (สูงสุดไปต่ำสุด): ตัวแปรโลคัล > ตัวแปรข้อมูลทดสอบ > ตัวแปรสภาพแวดล้อม > ตัวแปรโมดูล > ตัวแปรส่วนกลางระดับโปรเจกต์ > ตัวแปรส่วนกลางระดับทีม

ตัวอย่าง: หากคุณกำหนดตัวแปรสามตัวชื่อ userId:

เมื่อคุณใช้ {{userId}} ใน request ค่าที่ใช้งานจริงคือ 3000 (จากสภาพแวดล้อม) หากไม่มีค่าจากสภาพแวดล้อม ระบบจะใช้ค่าจากโมดูล (2000) จากนั้นจึงใช้ค่าส่วนกลางระดับโปรเจกต์ (1000)

ค่าเริ่มต้น vs ค่าปัจจุบัน

ตัวแปรส่วนกลาง, โมดูล และสภาพแวดล้อมมีทั้งค่าเริ่มต้นและค่าปัจจุบัน ซึ่งช่วยรักษาสมดุลระหว่างการแบ่งปันข้อมูลในทีมกับความเป็นส่วนตัวส่วนบุคคล

ค่าเริ่มต้นและค่าปัจจุบันใน Apidog

เมื่อมีค่าปัจจุบันอยู่ Apidog จะเลือกใช้ค่าปัจจุบัน หากค่าปัจจุบันว่างเปล่า Apidog จะใช้ค่าเริ่มต้น หากต้องการให้ค่าปัจจุบันเป็นไปตามค่าเริ่มต้น? คลิกไอคอนลิงก์ถัดจากค่าปัจจุบันเพื่อผูกใหม่

ค่าปัจจุบันจะถูกจัดเก็บไว้ในอุปกรณ์ของคุณและอาจสูญหายได้หากคุณล้างแคชหรือเปลี่ยนอุปกรณ์ ใน Apidog เวอร์ชันเว็บ ค่าเหล่านี้จะถูกจัดเก็บไว้ในเบราว์เซอร์ หากต้องการย้ายไปยังอุปกรณ์ใหม่ ให้ส่งออก/นำเข้าสภาพแวดล้อมเพื่อย้ายค่าปัจจุบัน

หมายเหตุ: เมื่อรันการทดสอบอัตโนมัติด้วย Apidog CLI โปรดจำความแตกต่างที่สำคัญอย่างหนึ่ง: ไคลเอนต์ Apidog ใช้ค่าปัจจุบันในระหว่างการดำเนินการ ในขณะที่ CLI ใช้ค่าเริ่มต้น หากผลลัพธ์แตกต่างกันระหว่างไคลเอนต์และ CLI นี่คือสาเหตุทั่วไป

วิธีการตั้งค่าตัวแปร

เลือกวิธีการที่ตรงกับแหล่งที่มาของค่าและวิธีที่คุณจะใช้มากที่สุด

ตั้งค่าตัวแปรโดยตรงในหน้าการจัดการสภาพแวดล้อม

เป็นวิธีที่ตรงไปตรงมาที่สุด คลิกปุ่ม การจัดการสภาพแวดล้อม (ด้านบนขวา) สลับไปที่ส่วนกลางหรือสภาพแวดล้อมเฉพาะ จากนั้นเพิ่มชื่อและค่า

ตั้งค่าตัวแปรโดยตรงในหน้าการจัดการสภาพแวดล้อม

วิธีนี้เหมาะสำหรับการกำหนดค่าที่เสถียร เช่น การเชื่อมต่อฐานข้อมูล คุณสามารถตั้งค่าได้ทั้งค่าเริ่มต้น (ที่ใช้ร่วมกัน) และค่าปัจจุบัน (ส่วนตัว)

ใช้คุณสมบัติ "จัดเก็บตัวแปร"

บ่อยครั้งที่ค่าตัวแปรมาจาก response—เช่น โทเค็นจาก login endpoint หรือ ID ผู้ใช้จาก create-user endpoint ใช้ "Store Variable" แบบภาพใน Post Processors เพื่อตั้งค่าตัวแปรใหม่

ใน Post Processors ของ request ให้เพิ่ม "Store Variable" เลือกแหล่งที่มา (โดยทั่วไปคือ JSON response) และเลือกฟิลด์โดยใช้ JSONPath

จัดเก็บตัวแปรใน Apidog

ตัวอย่างเช่น หาก JSON response คือ:

{
    "user": {
        "id": "69",
        "email": "Ralph85@gmail.com",
        "first_name": "Katlynn",
        "last_name": "Reichert",
        "api_token": "dolore ut mollit Duis sit",
        "created_at": "2025-09-19T01:03:50.236Z",
        "updated_at": "2025-05-10",
        "deleted_at": "2025-09-18T18:30:51.217Z",
        "role": "developer",
        "metadata": {}
    }
}

ใช้ $.user.email เพื่อดึงโทเค็น

คุณยังสามารถตั้งค่าตัวแปรได้โดยตรงจากส่วน response ของ request

ตั้งค่าตัวแปรโดยตรงจากส่วน response ของ request

ตั้งค่าตัวแปรผ่านสคริปต์

สำหรับตรรกะที่ซับซ้อนมากขึ้น ให้ใช้ Custom Script ใน Pre Processors หรือ Post Processors Apidog มี API สคริปต์ที่สมบูรณ์เพื่อจัดการตัวแปรทุกประเภท

// ตั้งค่าตัวแปรส่วนกลางระดับโปรเจกต์

pm.globals.set('variable_key', 'variable_value');

// ตั้งค่าตัวแปรส่วนกลางระดับทีม (ต้องกำหนดบนหน้า Team Resources ก่อน)

pm.globals.set('variable_key', 'variable_value', 'TEAM');

// ตั้งค่าตัวแปรสภาพแวดล้อม

pm.environment.set('variable_key', 'variable_value');

// ตั้งค่าตัวแปรโมดูล

pm.moduleVariables.set('variable_key', 'variable_value');

// ตั้งค่าตัวแปรโลคัล

pm.variables.set('variable_key', 'variable_value');

เมื่อจัดเก็บออบเจกต์หรืออาร์เรย์ ให้แปลงเป็นสตริงก่อนแล้วจึงแยกวิเคราะห์เมื่ออ่าน ตัวอย่างเช่น:

pm.environment.set('user', JSON.stringify(userObj));

const users = JSON.parse(pm.environment.get('user'));

หมายเหตุ: สคริปต์สามารถตั้งค่าได้เฉพาะค่าปัจจุบันของตัวแปรเท่านั้น ค่าเริ่มต้นควรตั้งค่าในหน้าการจัดการสภาพแวดล้อม

ใช้ข้อมูลฐานข้อมูลเป็นตัวแปร

Apidog สามารถดึงข้อมูลโดยตรงจากฐานข้อมูลและตั้งค่าเป็นตัวแปร ซึ่งเหมาะสำหรับการทดสอบที่อาศัยระเบียนจริง

เพิ่ม การดำเนินการฐานข้อมูล ใน Post Processors กำหนดค่าการเชื่อมต่อ และเขียน SQL จากนั้นดึงฟิลด์เข้าสู่ตัวแปรโดยใช้ JSONPath

ใช้ข้อมูลฐานข้อมูลเป็นตัวแปร

เคล็ดลับในการใช้ตัวแปร

ตัวแปรใช้งานได้ที่ไหนบ้าง

ตัวแปรจะถูกแก้ไขเมื่อมีการส่ง request จริงเท่านั้น ซึ่งหมายความว่าคุณสามารถใช้ตัวแปรในส่วนหัว, พารามิเตอร์, เนื้อหา, สถานการณ์การทดสอบ และสคริปต์—ทุกที่ที่เกี่ยวข้องกับการส่ง request

เนื่องจาก Apidog เน้นการแสดงผลด้วยภาพเป็นหลัก กฎง่ายๆ คือ: หากคุณเห็นปุ่ม "ค่าไดนามิก" คุณสามารถใช้ตัวแปรได้ที่นั่น

ไวยากรณ์พื้นฐาน

ใช้เครื่องหมายวงเล็บปีกกาคู่เพื่ออ้างอิงตัวแปร: {{variableName}} ซึ่งใช้งานได้ใน URL, ส่วนหัว, พารามิเตอร์ และเนื้อหา

ตัวอย่างเช่น ในพารามิเตอร์:

และในเนื้อหา:

หมายเหตุสำหรับเนื้อหา JSON: ตัวแปรสตริงต้องมีเครื่องหมายคำพูด ส่วนตัวแปรตัวเลขไม่จำเป็นต้องมีเครื่องหมายคำพูด วงเล็บปีกกาคู่อาจทำให้เกิดคำเตือน JSON lint แต่สามารถละเว้นได้อย่างปลอดภัย

หากคุณเห็น "ตัวแปรที่ไม่สามารถแก้ไขได้" อย่าตกใจ ตัวแปรที่ตั้งค่าใน Post Processors หรือสคริปต์อาจยังไม่มีอยู่จนกว่า request จะทำงาน และตัวแปรโลคัลจะหายไปหลังจากการทำงาน วิธีที่ดีที่สุดในการยืนยันคือการส่ง request จริงๆ

ดึงฟิลด์ย่อยจากตัวแปร

บางครั้งตัวแปรของคุณจัดเก็บออบเจกต์หรืออาร์เรย์ ไม่ใช่แค่สตริงหรือตัวเลขเท่านั้น ตัวอย่างเช่น user API มักจะส่งคืนออบเจกต์ที่มี id, name, email และอื่นๆ

สมมติว่าคุณจัดเก็บออบเจกต์ response นี้เป็นตัวแปรชื่อ user:

{
  "id": 1001,
  "name": "Joe",
  "email": "joe@example.com",
  "role": "admin"
}

คุณสามารถอ้างอิงฟิลด์เฉพาะได้ด้วย dot notation เช่น {{user.id}} (1001) หรือ {{user.name}} ("Joe")

สำหรับอาร์เรย์ก็คล้ายกัน หากคุณมีตัวแปร users:

[
  {"id": 1001, "name": "Joe"},
  {"id": 1002, "name": "Rio"},
  {"id": 1003, "name": "Outher"}
]

ใช้ {{users[0].name}} เพื่อรับชื่อผู้ใช้คนแรก หรือ {{users[1].id}} สำหรับ ID ของผู้ใช้คนที่สอง

สิ่งนี้เป็นไปตามความหมายคล้าย JSONPath—ชื่อตัวแปรทำหน้าที่เหมือน root ($)

ใช้ตัวแปรในสคริปต์

คุณสามารถใช้ตัวแปรในสคริปต์ที่กำหนดเองของ Pre Processors หรือ Post Processors Apidog มีชุด API สคริปต์ที่สมบูรณ์ ซึ่งช่วยให้คุณเข้าถึงตัวแปรประเภทต่างๆ ได้อย่างยืดหยุ่น

// รับตัวแปรส่วนกลางระดับโปรเจกต์

pm.globals.get('variable_key');

// รับตัวแปรส่วนกลางระดับทีม

pm.globals.get('variable_key', 'TEAM');



// รับตัวแปรสภาพแวดล้อม

pm.environment.get('variable_key');



// รับตัวแปรโมดูล

pm.moduleVariables.get('variable_key');



// รับตัวแปรโลคัล

pm.variables.get('variable_key');

สำหรับออบเจกต์/อาร์เรย์ที่จัดเก็บเป็นสตริง ให้แยกวิเคราะห์ก่อน:

const userObj = JSON.parse(pm.environment.get('user'));

console.log(userObj.name);

การทดสอบที่ขับเคลื่อนด้วยข้อมูลด้วยตัวแปรข้อมูลทดสอบ

อัปโหลดไฟล์ CSV หรือ JSON ที่มีหลายแถวข้อมูล ในระหว่างการดำเนินการ Apidog จะแทนที่ {{variableName}} ด้วยค่าจากแต่ละแถวและรันการทดสอบหนึ่งครั้งต่อแถว—เหมาะสำหรับการตรวจสอบความทนทานด้วยอินพุตจำนวนมาก

นิพจน์ค่าไดนามิก

นอกเหนือจากตัวแปรของคุณเองแล้ว Apidog ยังรองรับ ค่าไดนามิก ซึ่งสร้างข้อมูลสุ่มตามกฎเฉพาะ

ในสคริปต์ คุณสามารถประมวลผลสตริงที่รวมนิพจน์ไดนามิกด้วย await pm.variables.replaceInAsync():

const template = "Hello, {{$person.fullName}}";

const result = await pm.variables.replaceInAsync(template);

console.log(result); // แสดงผลชื่อที่สร้างแบบสุ่ม

ค่าไดนามิกเหมาะอย่างยิ่งสำหรับการสร้างข้อมูลทดสอบแบบสุ่มโดยไม่ต้องเตรียมชุดข้อมูลล่วงหน้า

สรุป

ตัวแปรเป็นหนึ่งในคุณสมบัติที่ทรงพลังที่สุดใน Apidog ช่วยลดการซ้ำซ้อน ทำให้การทดสอบมีความยืดหยุ่น และทำให้การสลับระหว่างโปรเจกต์และสภาพแวดล้อมง่ายขึ้น ไม่ว่าคุณจะแบ่งปันการตั้งค่าส่วนกลางข้ามทีม, ขับเคลื่อนการทดสอบด้วยข้อมูล CSV หรือแทนที่ค่าในเครื่อง ตัวแปรช่วยให้เวิร์กโฟลว์ของคุณมีประสิทธิภาพและเป็นระเบียบเรียบร้อย ด้วยการทำความเข้าใจประเภทตัวแปร ลำดับความสำคัญ และวิธีการตั้งค่า คุณสามารถมั่นใจได้ว่า request API ของคุณจะมีความสอดคล้องกัน บำรุงรักษาได้ และพร้อมสำหรับสถานการณ์จริง

ฝึกการออกแบบ API แบบ Design-first ใน Apidog

ค้นพบวิธีที่ง่ายขึ้นในการสร้างและใช้ API