JMeter องค์ประกอบ: กลุ่มเธรด, ตัวอย่าง, ผู้ฟัง, การกำหนดค่า
Element อยู่ในอะไร JMeter?
ส่วนประกอบต่าง ๆ ของ JMeter เรียกว่าธาตุ แต่ละองค์ประกอบได้รับการออกแบบเพื่อวัตถุประสงค์เฉพาะ
รูปด้านล่างแสดงองค์ประกอบทั่วไปบางประการ JMeter.
การศึกษาองค์ประกอบทั้งหมดในคราวเดียวเป็นการเชื้อเชิญให้เกิดความสับสนและความเบื่อหน่าย ที่นี่ เราจะพูดถึงองค์ประกอบที่ต้องรู้ก่อนจึงจะสามารถเริ่มต้นได้ การทดสอบ in JMeter.
ส่วนประกอบที่เหลือจะถูกกล่าวถึงเมื่อมีการใช้ในบทช่วยสอนครั้งต่อไป องค์ประกอบที่กล่าวถึงในบทช่วยสอนนี้คือ
กลุ่มกระทู้
Thread Groups คือกลุ่มของ Threads แต่ละเธรดแสดงถึงผู้ใช้หนึ่งรายที่ใช้แอปพลิเคชันภายใต้การทดสอบ โดยพื้นฐานแล้ว แต่ละเธรดจะจำลองคำขอของผู้ใช้จริงหนึ่งคำขอไปยังเซิร์ฟเวอร์
การควบคุมสำหรับกลุ่มเธรดทำให้คุณสามารถกำหนดจำนวนเธรดสำหรับแต่ละกลุ่มได้
ตัวอย่างเช่น หากคุณตั้งค่าจำนวนเธรดเป็น 100 JMeter จะสร้างและจำลองคำขอของผู้ใช้ 100 รายการไปยังเซิร์ฟเวอร์ภายใต้การทดสอบ
เครื่องเก็บตัวอย่าง
ดังที่เราทราบกันดีอยู่แล้วว่า JMeter รองรับการทดสอบ HTTP, FTP, JDBC และโปรโตคอลอื่น ๆ อีกมากมาย
เรารู้อยู่แล้วว่ากลุ่มเธรดจำลองคำขอของผู้ใช้ไปยังเซิร์ฟเวอร์
แต่กลุ่มเธรดจะรู้ได้อย่างไรว่าคำขอประเภทใด (HTTP, FTP ฯลฯ ) จำเป็นต้องสร้าง
คำตอบคือแซมเพลอร์
คำขอของผู้ใช้อาจเป็นคำขอ FTP, คำขอ HTTP, คำขอ JDBC ... ฯลฯ
คำขอ FTP
สมมติว่าคุณต้องการทดสอบประสิทธิภาพเซิร์ฟเวอร์ FTP คุณสามารถใช้ตัวอย่างคำขอ FTP ได้ JMeter เพื่อทำภารกิจนี้ ตัวควบคุมนี้ช่วยให้คุณส่งคำขอ "ดาวน์โหลดไฟล์" หรือ "อัปโหลดไฟล์" FTP ไปยังเซิร์ฟเวอร์ FTP
ตัวอย่างเช่น หากคุณต้องการดาวน์โหลดไฟล์ “Test.txt” จากเซิร์ฟเวอร์ FTP ที่กำลังทดสอบ คุณจะต้องกำหนดค่าพารามิเตอร์บางตัวใน JMeter ดังรูปด้านล่าง
JMeter จะส่งคำสั่ง FTP ไปยังเซิร์ฟเวอร์ FTP ftp.example.com
แล้วดาวน์โหลดไฟล์ Test.txt จากเซิร์ฟเวอร์นั้น
คำขอ HTTP
ตัวอย่างนี้ช่วยให้คุณสามารถส่งคำขอ HTTP/HTTPS ไปยังเว็บเซิร์ฟเวอร์ได้
ลองพิจารณาตัวอย่างด้านล่าง JMeter ส่งคำขอ HTTP ไปยังเว็บไซต์ Google และดึงไฟล์ HTML หรือรูปภาพจากเว็บไซต์นี้
ในบทช่วยสอน JMeter การทดสอบประสิทธิภาพเราจะอธิบายเพิ่มเติมเกี่ยวกับคำขอ HTTP นี้
คำขอ JDBC
ตัวอย่างนี้ช่วยให้คุณสามารถรันฐานข้อมูลได้ การทดสอบประสิทธิภาพ- มันส่งคำขอ JDBC (แบบสอบถาม SQL) ไปยังฐานข้อมูล
ตัวอย่างเช่น เซิร์ฟเวอร์ฐานข้อมูลมีฟิลด์ test_result เก็บไว้ในชื่อตาราง test_tbl คุณต้องการสอบถามข้อมูลนี้จากเซิร์ฟเวอร์ฐานข้อมูล คุณสามารถกำหนดค่าได้ JMeter เพื่อส่งไฟล์ SQL สอบถามไปยังเซิร์ฟเวอร์นี้เพื่อดึงข้อมูล
เครื่องเก็บตัวอย่าง BSF
ตัวอย่างนี้ช่วยให้คุณสามารถเขียนตัวอย่างโดยใช้ BSF ภาษาสคริปต์
นี่คือตัวอย่างของ BSF Sampler ใน JMeter
การเข้าถึงตัวอย่างบันทึก
ตัวอย่างนี้ช่วยให้คุณอ่านบันทึกการเข้าถึงและสร้างคำขอ HTTP บันทึกอาจเป็นรูปภาพ, Html, CSS...
ตัวอย่าง SMTP
หากคุณต้องการทดสอบเซิร์ฟเวอร์อีเมล คุณสามารถใช้ SMTP Sampler ได้ ซึ่งใช้สำหรับส่งข้อความอีเมลโดยใช้โปรโตคอล SMTP
ฟัง
ผู้ฟัง: แสดงผลการดำเนินการทดสอบ สามารถแสดงผลลัพธ์ในรูปแบบที่แตกต่างกัน เช่น ต้นไม้ ตาราง กราฟ หรือไฟล์บันทึก
ผู้ฟังผลลัพธ์กราฟจะแสดงเวลาตอบสนองของเซิร์ฟเวอร์บนกราฟ
ดูผลลัพธ์ต้นไม้แสดงผลลัพธ์ของคำขอของผู้ใช้ในรูปแบบ HTML พื้นฐาน
Table Result แสดงผลสรุปผลการทดสอบในรูปแบบตาราง
บันทึกแสดงสรุปผลการทดสอบในไฟล์ข้อความ
องค์ประกอบการกำหนดค่า
ตั้งค่าเริ่มต้นและตัวแปรสำหรับการใช้ในภายหลังโดยเครื่องสุ่มตัวอย่าง
รูปด้านล่างแสดงองค์ประกอบการกำหนดค่าที่ใช้กันทั่วไปบางส่วน JMeter
การกำหนดค่าชุดข้อมูล CSV
สมมติว่าคุณต้องการทดสอบเว็บไซต์สำหรับผู้ใช้ 100 รายที่ลงชื่อเข้าใช้ด้วยข้อมูลรับรองที่แตกต่างกัน คุณไม่จำเป็นต้องบันทึกสคริปต์ 100 ครั้ง! คุณสามารถกำหนดพารามิเตอร์สคริปต์เพื่อป้อนข้อมูลรับรองการเข้าสู่ระบบที่แตกต่างกันได้ ข้อมูลการเข้าสู่ระบบนี้ (เช่น ชื่อผู้ใช้ รหัสผ่าน) สามารถจัดเก็บไว้ในไฟล์ข้อความได้ JMeter มีองค์ประกอบที่ให้คุณอ่านพารามิเตอร์ที่แตกต่างจากไฟล์ข้อความนั้น มันคือ “การกำหนดค่าชุดข้อมูล CSV” ซึ่งใช้ในการอ่านบรรทัดจากไฟล์และแยกออกเป็นตัวแปร
นี่คือตัวอย่างข้อมูล CSV เป็นไฟล์ข้อความที่มีผู้ใช้และรหัสผ่านเพื่อเข้าสู่ระบบเว็บไซต์เป้าหมายของคุณ
ตัวจัดการคุกกี้ HTTP
มาทำความเข้าใจสิ่งนี้ด้วยตัวอย่าง –
คุณใช้เบราว์เซอร์ของคุณ (Firefox, IE...ฯลฯ) เพื่อเรียกดู www.google.com
คุณเข้าสู่ระบบด้วยชื่อผู้ใช้และรหัสผ่านของคุณ
ชื่อผู้ใช้และรหัสผ่านของคุณจะถูกเก็บไว้ในคอมพิวเตอร์ของคุณเป็นคุกกี้
ครั้งหน้าเมื่อมาเยือน. www.google.comคุณไม่จำเป็นต้องเข้าสู่ระบบอีกครั้งเนื่องจากเบราว์เซอร์ของคุณจะใช้คุกกี้ของคุณเป็นข้อมูลผู้ใช้ในการเข้าสู่ระบบ
HTTP Cookie Manager ยังมีคุณสมบัติเช่นเดียวกับเว็บเบราว์เซอร์ หากคุณมีคำขอ HTTP และการตอบกลับมีคุกกี้ ตัวจัดการคุกกี้จะจัดเก็บคุกกี้นั้นโดยอัตโนมัติและจะใช้มันสำหรับคำขอทั้งหมดในอนาคตที่ไปยังเว็บไซต์นั้น ๆ
ค่าเริ่มต้นคำขอ HTTP
องค์ประกอบนี้ช่วยให้คุณตั้งค่าเริ่มต้นที่ตัวควบคุมคำขอ HTTP ของคุณใช้
ตัวอย่างเช่น
คุณกำลังส่งคำขอ HTTP 100 รายการไปยังเซิร์ฟเวอร์ google.com
คุณจะต้องป้อนชื่อเซิร์ฟเวอร์ = google.com ด้วยตนเองสำหรับคำขอทั้งหมด 100 รายการเหล่านี้
แต่คุณสามารถเพิ่มค่าเริ่มต้นคำขอ HTTP เดียวด้วยช่อง "ชื่อเซิร์ฟเวอร์หรือ IP" = google.com
ไม่ต้องพิมพ์ 100 ครั้ง!
องค์ประกอบนี้จะอธิบายโดยละเอียดในบทช่วยสอน JMeter การทดสอบประสิทธิภาพ
องค์ประกอบการกำหนดค่าการเข้าสู่ระบบ
องค์ประกอบการกำหนดค่าการเข้าสู่ระบบช่วยให้คุณเพิ่มหรือแทนที่การตั้งค่าชื่อผู้ใช้และรหัสผ่านในตัวอย่างได้
ตัวอย่างเช่น คุณต้องการจำลองการเข้าสู่ระบบของผู้ใช้หนึ่งรายไปยังเว็บไซต์ www.facebook.com ด้วยชื่อผู้ใช้และรหัสผ่าน คุณสามารถใช้องค์ประกอบการกำหนดค่าการเข้าสู่ระบบเพื่อเพิ่มการตั้งค่าผู้ใช้และรหัสผ่านนี้ในคำขอของผู้ใช้
องค์ประกอบการกำหนดค่าการเข้าสู่ระบบเทียบกับการกำหนดค่าข้อมูล CSV
องค์ประกอบการกำหนดค่าการเข้าสู่ระบบ | การกำหนดค่าข้อมูล CSV |
---|---|
ใช้เพื่อจำลองการเข้าสู่ระบบของผู้ใช้หนึ่งคน | ใช้เพื่อจำลองการเข้าสู่ระบบของผู้ใช้หลายคน |
เหมาะสำหรับพารามิเตอร์การเข้าสู่ระบบเท่านั้น (ผู้ใช้และรหัสผ่าน) | เหมาะสำหรับพารามิเตอร์จำนวนมาก |