Load Testing & Performance Benchmarking (JMeter & k6) · บทเรียน

ฟังก์ชันและตัวแปรของ JMeter

สำรวจฟังก์ชันในตัวของ JMeter และตัวแปรที่ผู้ใช้กำหนด เพื่อให้สคริปต์มีความยืดหยุ่น

บทเรียน 3 จาก 411 ขั้นตอน

ฟังก์ชันและตัวแปรของ JMeter เป็นบทเรียน Load Testing & Performance Benchmarking (JMeter & k6) ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Load Testing & Performance Benchmarking (JMeter & k6) และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Load Testing & Performance Benchmarking (JMeter & k6) มีบทเรียนทั้งหมด 4 บทเรียน

ข้อมูลที่เปลี่ยนแปลงได้ใน JMeter

ยินดีต้อนรับ! ในการทดสอบประสิทธิภาพ เป็นเรื่องยากที่ผู้ใช้ทุกคนจะทำสิ่งเดียวกันทุกประการหรือใช้ข้อมูลเหมือนกันทุกประการ

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

ตัวแปรของ JMeter คืออะไร

ตัวแปรของ JMeterคือตัวยึดตำแหน่งที่ใช้จัดเก็บค่า ลองนึกภาพว่าเป็นป้ายชื่อชั่วคราวสำหรับข้อมูลชิ้นหนึ่ง

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

สิ่งนี้สำคัญอย่างยิ่งต่อความง่ายในการบำรุงรักษาและความยืดหยุ่น

ตัวแปรที่ผู้ใช้กำหนด (UDV)

วิธีที่ง่ายที่สุดในการสร้างตัวแปรใน JMeter คือการใช้องค์ประกอบ ตัวแปรที่ผู้ใช้กำหนด

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

วิธีนี้เหมาะอย่างยิ่งสำหรับค่าคงที่ที่คุณต้องการจัดการจากศูนย์กลาง เช่น URL พื้นฐานหรือชื่อผู้ใช้เริ่มต้น

Add Element:
  Test Plan > Add > Config Element > User Defined Variables

Configuration:
  Name: BASE_URL
  Value: http://example.com

  Name: USER_COUNT
  Value: 100

การใช้ UDV ในคำขอ

เมื่อกำหนดแล้ว คุณจะสามารถอ้างอิงตัวแปรที่ผู้ใช้กำหนดได้ทุกที่ในแผนการทดสอบโดยใช้ไวยากรณ์ ${variableName}

JMeter จะแทนที่ตัวยึดตำแหน่งนี้ด้วยค่าจริงของตัวแปรระหว่างการทำงานของการทดสอบ

HTTP Request Sampler:
  Protocol: http
  Server Name or IP: ${BASE_URL}
  Path: /login

HTTP Header Manager:
  Name: X-User-Count
  Value: ${USER_COUNT}

แนะนำฟังก์ชันของ JMeter

ในขณะที่ตัวแปรจัดเก็บค่าคงที่หรือค่าที่อัปเดตด้วยตนเอง ฟังก์ชันของ JMeterจะสร้างค่าที่เปลี่ยนแปลงได้ระหว่างการทำงาน

ฟังก์ชันจะเริ่มต้นด้วย ${__functionName(...)} และสามารถรับพารามิเตอร์ได้ ฟังก์ชันเหล่านี้ช่วยจำลองพฤติกรรมของผู้ใช้ให้สมจริงยิ่งขึ้น เช่น การสร้างตัวเลขสุ่มหรือ ID ที่ไม่ซ้ำกัน

ฟังก์ชัน __Random

ฟังก์ชัน __Random จะสร้างจำนวนเต็มแบบสุ่มภายในช่วงที่กำหนด

รูปแบบการใช้งานคือ ${__Random(min, max, variableName)}:

  • min: จำนวนที่น้อยที่สุดที่จะสร้าง
  • max: จำนวนที่มากที่สุดที่จะสร้าง
  • variableName: (ไม่บังคับ) ตัวแปรสำหรับเก็บค่าที่สร้างขึ้น

ฟังก์ชันนี้เหมาะสำหรับการเลือกรายการแบบสุ่มจากรายการ หรือจำลองข้อมูลนำเข้าที่มีค่าแตกต่างกัน

Example:
  ${__Random(1, 10,)}
  // Generates a random number between 1 and 10

  ${__Random(100, 999, myRandomID)}
  // Generates a random number between 100 and 999
  // and stores it in a variable named 'myRandomID'

การใช้ __Random ในการทดสอบ

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

วิธีนี้ช่วยกระจายภาระงานไปยังทรัพยากรต่าง ๆ และเลียนแบบพฤติกรรมของผู้ใช้จริง

HTTP Request Sampler:
  Protocol: http
  Server Name or IP: ${BASE_URL}
  Path: /products/${__Random(1001, 2000,)}

  // This would access paths like:
  // /products/1543
  // /products/1987
  // etc.

ฟังก์ชัน __counter

ฟังก์ชัน __counter จะสร้างชุดตัวเลขที่ไม่ซ้ำกัน ฟังก์ชันนี้มีประโยชน์เมื่อต้องระบุตัวระบุที่ไม่ซ้ำกันหรือสร้างข้อมูลตามลำดับ

รูปแบบการใช้งานคือ ${__counter(true/false, variableName)}:

  • true: ตัวนับจะใช้ร่วมกันทั่วทุกกลุ่มเธรด
  • false: ตัวนับจะใช้เฉพาะภายในแต่ละเธรด
  • variableName: (ไม่บังคับ) ตัวแปรสำหรับเก็บค่าที่สร้างขึ้น
Example:
  ${__counter(false,)}
  // Generates 1, 2, 3... for each thread independently

  ${__counter(true, globalCount)}
  // Generates 1, 2, 3... globally across all threads
  // and stores it in 'globalCount'

การใช้ __counter สำหรับรหัสที่ไม่ซ้ำกัน

ลองนึกภาพว่าคุณกำลังทดสอบ API สำหรับสร้างคำสั่งซื้อ ซึ่งคำสั่งซื้อแต่ละรายการต้องมีรหัสที่ไม่ซ้ำกัน การใช้ __counter จะช่วยให้คำขอทุกรายการส่งรหัสคำสั่งซื้อที่แตกต่างกัน

วิธีนี้สำคัญอย่างยิ่งในการหลีกเลี่ยงความขัดแย้งของข้อมูลและจำลองธุรกรรมได้อย่างถูกต้อง

HTTP Request Sampler:
  Method: POST
  Path: /orders

  Body Data:
  {
    "orderId": "ORDER-${__counter(true,)}",
    "customerName": "Test User"
  }

  // Example Body Data:
  // {"orderId": "ORDER-1", ...}
  // {"orderId": "ORDER-2", ...}

แบบทดสอบฟังก์ชันและตัวแปร

ข้อใดต่อไปนี้กล่าวถูกต้องเกี่ยวกับตัวแปรและฟังก์ชันของ JMeter

ทบทวน: ฟังก์ชันและตัวแปร

ทำได้ดีมากครับ/ค่ะ! คุณได้เรียนรู้วิธีทำให้การทดสอบ JMeter มีความยืดหยุ่นและสมจริงมากขึ้น:

  • ตัวแปร JMeter ใช้เป็นช่องแทนค่าสำหรับค่าที่นำกลับมาใช้ซ้ำได้ เช่น URL พื้นฐาน
  • ตัวแปรที่ผู้ใช้กำหนด (UDVs) เป็นวิธีง่าย ๆ ในการกำหนดตัวแปรแบบคงที่เหล่านี้
  • ฟังก์ชัน JMeter จะสร้างค่าแบบไดนามิกระหว่างการทำงานของการทดสอบ
  • ฟังก์ชัน __Random จะสร้างตัวเลขแบบสุ่มสำหรับข้อมูลนำเข้าที่หลากหลาย
  • ฟังก์ชัน __counter จะสร้างตัวเลขที่ไม่ซ้ำกันและเรียงตามลำดับ

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

เริ่มต้นได้ฟรี

เรียนรู้ Load Testing & Performance Benchmarking (JMeter & k6) ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
12
บทเรียน
48

คำถามที่พบบ่อย

บทเรียน “ฟังก์ชันและตัวแปรของ JMeter” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ฟังก์ชันและตัวแปรของ JMeter” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Load Testing & Performance Benchmarking (JMeter & k6) ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Load Testing & Performance Benchmarking (JMeter & k6) มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ฟังก์ชันและตัวแปรของ JMeter”

สำรวจฟังก์ชันในตัวของ JMeter และตัวแปรที่ผู้ใช้กำหนด เพื่อให้สคริปต์มีความยืดหยุ่น คุณปฏิบัติ Load Testing & Performance Benchmarking (JMeter & k6) ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Load Testing & Performance Benchmarking (JMeter & k6) หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Load Testing & Performance Benchmarking (JMeter & k6) บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “ฟังก์ชันและตัวแปรของ JMeter” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Load Testing & Performance Benchmarking (JMeter & k6) นี้ได้ไหม

ได้ บทเรียน Load Testing & Performance Benchmarking (JMeter & k6) ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การกำหนดพารามิเตอร์ด้วยข้อมูล CSV
  2. การจัดการค่าแบบไดนามิก (การเชื่อมโยงค่า)
  3. ฟังก์ชันและตัวแปรของ JMeter
  4. การทดสอบฐานข้อมูลด้วย JDBC
← กลับไปที่ Load Testing & Performance Benchmarking (JMeter & k6)