ตัวอย่างความสัมพันธ์ใน LoadRunner กับ web_reg_save_param

⚡ สรุปอย่างชาญฉลาด

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

  • 🔘 ความหมาย: การเชื่อมโยง (Corresponding) จะผูกการตอบสนองของเซิร์ฟเวอร์เข้ากับคำขอทั้งหมดที่ตามมาซึ่งขึ้นอยู่กับการตอบสนองนั้น
  • ☑️ อาการ: การเล่นซ้ำจะล้มเหลวเมื่อสคริปต์ส่งคืนรหัสเซสชันที่บันทึกไว้ซึ่งเซิร์ฟเวอร์ไม่รู้จักอีกต่อไป
  • อัตโนมัติ: กฎและระบบตรวจจับอัตโนมัติของ VuGen เปรียบเทียบรีเพลย์สองรายการ แต่ครอบคลุมเพียงส่วนน้อยของกรณีเท่านั้น
  • 🧪 คู่มือ: ฟังก์ชัน web_reg_save_param จะบันทึกค่าที่อยู่ระหว่างขอบเขตด้านซ้ายและด้านขวา
  • 🛠️ ตำแหน่ง: ฟังก์ชันการลงทะเบียนจะต้องอยู่เหนือขั้นตอนที่ส่งค่าการตอบกลับมา
  • 📊 ผลตอบแทน: สคริปต์ที่สัมพันธ์กันจะเล่นซ้ำด้วยข้อมูลใหม่และมีขนาดเล็ลงอย่างเห็นได้ชัด

ความสัมพันธ์ใน LoadRunner กับ web_reg_save_param

ความสัมพันธ์คืออะไร?

ความสัมพันธ์เชิงสถิติ (Correlation) ตามชื่อที่บ่งบอก คือกลไกในการกำหนดความสัมพันธ์ระหว่างตัวแปรหรือสิ่งต่างๆ สองอย่าง พจนานุกรมให้คำจำกัดความว่า “ความสัมพันธ์ทางสถิติระหว่างตัวแปรสองตัวขึ้นไป โดยที่การเปลี่ยนแปลงอย่างเป็นระบบในอีกตัวแปรหนึ่ง จะมาพร้อมกับการเปลี่ยนแปลงอย่างเป็นระบบในค่าของตัวแปรหนึ่ง”

หมายเหตุเกี่ยวกับแบรนด์: เครื่องมือนี้ถูกจัดส่งในชื่อ HP แล้วต่อมา Micro Focus LoadRunnerและตอนนี้ OpenText วิศวกรรมประสิทธิภาพระดับมืออาชีพฟังก์ชันความสัมพันธ์ทั้งหมดด้านล่างยังคงไม่เปลี่ยนแปลง และผู้ขายได้สะกดชื่อผู้สร้างสคริปต์ไว้แล้ว วูเจน.

ทำไมเราถึงต้องการความสัมพันธ์?

เรามาทำความเข้าใจความสัมพันธ์เชิงสถิติด้วยสถานการณ์ต่อไปนี้กัน

ลองนึกภาพว่าคุณกำลังบันทึกสคริปต์โดยใช้... โหลดรันเนอร์.

การสื่อสารระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ในระหว่างการบันทึกดำเนินไปดังนี้ ซึ่งแผนภาพได้สรุปไว้แล้ว:

  1. ในระหว่างการบันทึกข้อมูล ไคลเอนต์จะส่งคำขอไปยังเซิร์ฟเวอร์เพื่อเริ่มต้นเซสชัน
  2. เซิร์ฟเวอร์ได้รับการร้องขอและจัดสรร ID เซสชัน ABC ใหม่
  3. ลูกค้าเก็บรหัสเซสชั่น ABC ไว้ในสคริปต์
  4. ไคลเอนต์เริ่มต้นเซสชันด้วยรหัสประจำตัว ABC และส่งคำขอไปยังเซิร์ฟเวอร์เพื่อขออนุญาตบันทึก
  5. เซิร์ฟเวอร์รู้จัก ID ABC และอนุญาตให้ไคลเอนต์บันทึกสคริปต์

การแลกเปลี่ยนรหัสเซสชันระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ขณะบันทึกสคริปต์ LoadRunner

ต่อไปนี้ เราจะมาศึกษาการสื่อสารระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ในระหว่างการเล่นซ้ำ ซึ่งแสดงให้เห็นหลังจากขั้นตอนเหล่านี้:

  1. ในระหว่างการเล่นซ้ำ ไคลเอนต์จะส่งคำขอไปยังเซิร์ฟเวอร์เพื่อเริ่มเซสชัน
  2. เซิร์ฟเวอร์ได้รับการร้องขอและจัดสรร ID เซสชันใหม่ XYZ
  3. ไคลเอนต์เริ่มต้นเซสชันด้วยรหัสเซสชันที่บันทึกไว้ก่อนหน้านี้คือ ABC และส่งคำขอไปยังเซิร์ฟเวอร์เพื่อขออนุญาตบันทึก
  4. เซิร์ฟเวอร์ไม่สามารถระบุ ID ABC ได้เนื่องจากคาดว่าจะมี ID XYZ ที่ได้รับการจัดสรรและเซสชันล้มเหลว

ความไม่ตรงกันของรหัสเซสชันระหว่างการเล่นซ้ำเมื่อไม่มีการเชื่อมโยงข้อมูล

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

  1. ในระหว่างการเล่นซ้ำ ไคลเอนต์จะส่งคำขอไปยังเซิร์ฟเวอร์เพื่อเริ่มเซสชัน
  2. เซิร์ฟเวอร์ได้รับการร้องขอและจัดสรร ID เซสชัน ZZZ ใหม่
  3. ลูกค้าแยกวิเคราะห์เซสชันใหม่ ID ZZZ จากคำขอ
  4. ลูกค้าส่งคำขอเพื่อเริ่มเซสชันด้วย id ZZZ
  5. เซิร์ฟเวอร์รู้จัก ID ZZZ และอนุญาตให้ไคลเอนต์เล่นสคริปต์ซ้ำ

การเชื่อมโยงจะบันทึกรหัสเซสชันใหม่และส่งกลับไปยังเซิร์ฟเวอร์

นี่ไม่มีอะไรนอกจาก ความสัมพันธ์.

วิดีโอสั้นด้านล่างนี้จะอธิบายปัญหาการบันทึกและเล่นซ้ำแบบเดียวกัน

คลิก Good Farm Animal Welfare Awards หากไม่สามารถเข้าถึงวิดีโอได้

ในกรณีของ VuGen ความสัมพันธ์หมายถึงความเชื่อมโยงระหว่างการตอบกลับและคำขอใดๆ ที่มาก่อนหน้านี้

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

พูดง่ายๆ ก็คือ วิธีแก้ปัญหาโดยใช้ Correlation คือ:

  1. จับค่าเอาต์พุตจากขั้นตอน
  2. ใช้ค่าที่บันทึกไว้ข้างต้นเพื่อใช้เป็นอินพุตสำหรับขั้นตอนต่อๆ ไปทั้งหมด

ใน VuGen/LoadRunner ความสัมพันธ์ถูกแบ่งออกเป็น 2 ประเภท:

  • ความสัมพันธ์อัตโนมัติ
  • ความสัมพันธ์ด้วยตนเอง

ความสัมพันธ์อัตโนมัติ

LoadRunner มีกลไกในการสร้างความสัมพันธ์โดยอัตโนมัติได้อย่างง่ายดาย

VuGen จะขอให้คุณเรียกใช้สคริปต์ที่บันทึกไว้อย่างน้อยสองครั้ง เพื่อให้ระบบสามารถเปรียบเทียบค่าต่างๆ ในการตอบสนองจากเซิร์ฟเวอร์ได้ภายใน

ความสัมพันธ์อัตโนมัติสามารถแบ่งได้เป็น 3 ประเภท:

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

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

หากต้องการกำหนดค่าความสัมพันธ์อัตโนมัติในขณะที่บันทึก ให้ดำเนินการกำหนดค่าด้านล่างในการตั้งค่าเวลาบันทึกหลังจากบันทึกสคริปต์แล้ว

คลิกที่ บันทึก => ตัวเลือกการบันทึก (หรือกด Ctrl + F7) ตามที่แสดงในเมนูด้านล่าง

เมนู VuGen Record โดยเลือกตัวเลือกการบันทึก (Recording Options) ไว้

หน้าต่างด้านล่างจะเปิดขึ้น:

หน้าต่างตัวเลือกการบันทึกของ VuGen แสดงรายการโหนดการกำหนดค่าการบันทึก

คลิกที่ Correlation =>Configuration – หน้าต่างด้านล่างจะเปิดขึ้น

แผงการกำหนดค่าความสัมพันธ์ที่แสดงรายการชุดกฎของแอปพลิเคชัน เช่น ASPNET

ที่นี่ คุณจะต้องทำเครื่องหมายว่าเลือกแล้วกับแอปพลิเคชันทั้งหมด (ASPNET) ฯลฯ ที่ใช้ในใบสมัครเรื่องของคุณ ทางด้านขวามือ คุณจะเห็นกฎที่จะตรวจจับตัวเลือกที่เป็นไปได้สำหรับความสัมพันธ์ เช่น _VIEWSTATE คุณยังสามารถเพิ่มแอปพลิเคชันเพิ่มเติมหรือกฎที่กำหนดเองได้โดยคลิกที่ปุ่มกฎใหม่

คุณยังสามารถคลิกที่ กฎ คุณจะเห็นดังต่อไปนี้:

หน้าต่างกฎความสัมพันธ์ พร้อมตัวเลือกการสแกนกฎ

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

เราจะมาทำความเข้าใจเกี่ยวกับ API ที่ใช้ในการหาความสัมพันธ์กันในภายหลัง อย่างไรก็ตาม แนะนำให้ใช้การเปรียบเทียบ HTML แทนการเปรียบเทียบข้อความ

เมื่อคุณเลือกกฎใดๆ แล้ว ให้คลิกปุ่มตกลงเพื่อปิดหน้าต่าง

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

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

ขั้นตอนในการเชื่อมโยงสคริปต์อัตโนมัติ:

  1. บันทึกสคริปต์
  2. เล่นซ้ำสคริปต์
  3. ระบุค่าที่จะสัมพันธ์กัน
  4. เลือกค่าและคลิกปุ่มเชื่อมโยงอัตโนมัติ
  5. ตรวจสอบสคริปต์โดยการรันอีกครั้ง การวิ่งที่ประสบความสำเร็จหมายถึงความสัมพันธ์ที่ประสบความสำเร็จ

เคล็ดลับ:

  • สหสัมพันธ์ช่วยเรียกใช้สคริปต์ของคุณด้วยค่าที่แตกต่างกัน
  • ความสัมพันธ์ยังช่วยลดขนาดของสคริปต์ของคุณด้วย

ความสัมพันธ์แบบแมนนวล

ความสัมพันธ์แบบแมนนวลเป็นเรื่องเกี่ยวกับการเขียนโค้ดลงในสคริปต์ของคุณโดยตรงเพื่อรองรับค่าที่เปลี่ยนแปลงตลอดเวลา เราสามารถแบ่งออกเป็นขั้นตอนด้านล่าง:

  1. กำหนดค่าที่จะจับ
  2. ค้นหาขอบเขตข้อความด้านขวาและด้านซ้ายของค่าที่จะจับภาพ (WEB)
  3. ค้นหาว่าควรใช้ขอบเขตข้อความใด
  4. เพิ่มฟังก์ชัน web_reg_save_param ให้กับสคริปต์ เหนือส่วนของโค้ดที่ร้องขอหน้าเว็บที่มีค่าที่จะจับภาพ
  5. เพิ่มชื่อพารามิเตอร์ ขอบเขตด้านซ้าย ขอบเขตด้านขวา และรายการที่เกิดขึ้นให้กับฟังก์ชัน
  6. กำหนดพารามิเตอร์ของค่าไดนามิกในสคริปต์ทุกครั้งที่เกิดขึ้น
  7. ตรวจสอบการดำเนินการที่ถูกต้อง
web_reg_save_param (" OracleAppJSESSIONID3",
	"LB/IC=JSESSIONID=",
	"RB/IC=;",
	"Ord=l",
	"Search=headers",
	"RelFrameId=l",
	LAST);

web_reg_save_param("Siebel_Analytic_ViewState2",
	"LB/IC=ViewState\" value=\"",
	"RB/IC=\"",
	"Ord=1",
	"Search=Body",
	"RelFrameId=l",
	LAST);

Code บันทึกย่อ: ทั้งสองส่วนปรากฏตรงตามที่เผยแพร่ไว้ทุกประการ โปรดตรวจสอบลำดับ: ลำดับ = 1 และ เฟรมอ้างอิง=l ใช้ตัวอักษร L ตัวเล็ก และ VuGen คาดหวังตัวเลข 1

ความสัมพันธ์แบบแมนนวลสามารถทำได้โดยการเปรียบเทียบ VUser ขั้นตอนในวิธีการเปรียบเทียบ VUser ของ Correlation สามารถแบ่งได้ดังนี้

  1. ระบุค่าไดนามิกที่ต้องมีความสัมพันธ์กัน
  2. ค้นหาการตอบสนองจากเซิร์ฟเวอร์ที่มีค่าแบบไดนามิก
  3. บันทึกค่าไดนามิกในพารามิเตอร์
  4. แทนที่ค่าไดนามิกที่เกิดขึ้นทุกครั้งด้วยพารามิเตอร์
  5. ตรวจสอบการเปลี่ยนแปลง

ทำความเข้าใจฟังก์ชัน web_reg_save_param

VuGen มีฟังก์ชันหรือ API หลายตัวที่ใช้ในการเชื่อมโยงผู้สมัคร รวมถึง:

  • web_reg_save_param
  • web_reg_save_param_ex
  • web_reg_save_param_regexp
  • web_reg_save_param_xpath

หมายเหตุเกี่ยวกับเวอร์ชัน: เวอร์ชัน VuGen ปัจจุบันรองรับ... web_reg_save_param_ex ในฐานะผู้สืบทอดหน้าที่เดิม และ web_reg_save_param_regexp เป็นทางเลือกเมื่อขอบเขตเปลี่ยนแปลงไป ตัวอย่างเดิมยังคงใช้ได้อยู่

แม้ว่านี่จะเป็นการแนะนำโดยสังเขป แต่เพื่อให้เข้าใจฟังก์ชันและพารามิเตอร์อย่างละเอียด โปรดเปิด VuGen พิมพ์ฟังก์ชัน (หรือใช้ Steps Toolbox) เลื่อนเคอร์เซอร์ไปที่ฟังก์ชันแล้วคลิก F1 – เพื่อทำความคุ้นเคยกับมัน VuGen ช่วยเหลือ และทำให้เป็นนิสัย คุณจะต้องเจอกับเรื่องนี้บ่อยๆ เมื่อทำงานในอุตสาหกรรมนี้

เรามาดูรายละเอียดฟังก์ชั่นกัน:

web_reg_save_param(ชื่อพารามิเตอร์ , ขอบเขตด้านซ้าย , ขอบเขตด้านขวา )

รายการคุณสมบัติ

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

คุณลักษณะ ต้อง? สิ่งที่มันไม่
แปลง สามารถเลือกหรือไม่เลือกก็ได้ HTML_TO_URL แปลงข้อมูลที่เข้ารหัส HTML เป็น URLรูปแบบข้อมูลที่เข้ารหัส HTML_TO_TEXT จะแปลงข้อมูลที่เข้ารหัส HTML ให้เป็นรูปแบบข้อความธรรมดา
ละเว้นการเปลี่ยนเส้นทาง ตัวเลือกเสริม ค่าเริ่มต้นคือ “ละเว้นการเปลี่ยนเส้นทาง = ไม่” เมื่อตั้งค่าเป็น ใช่ และการตอบกลับจากเซิร์ฟเวอร์เป็นข้อมูลการเปลี่ยนเส้นทาง (รหัสสถานะ HTTP 300-303, 307) การค้นหาจะไม่เกิดขึ้น คำขอ GET จะถูกส่งไปยังตำแหน่งที่เปลี่ยนเส้นทาง และการค้นหาจะทำงานกับข้อมูลที่ได้รับจากการตอบกลับที่นั่น
LB ต้อง ขอบเขตด้านซ้ายของพารามิเตอร์หรือข้อมูลแบบไดนามิก หากคุณไม่ได้ระบุค่า LB ระบบจะใช้ตัวอักษรทั้งหมดตั้งแต่ต้นข้อมูลเป็นขอบเขต พารามิเตอร์ขอบเขตนั้นคำนึงถึงตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก หากต้องการปรับแต่งข้อความค้นหาเพิ่มเติม ให้ใช้แฟล็กข้อความอย่างน้อยหนึ่งรายการ
ไม่พบ ตัวเลือกเสริม ค่าเริ่มต้นคือ “ข้อผิดพลาด” การจัดการเมื่อไม่พบขอบเขตและสร้างสตริงว่าง “Not found=error” จะทำให้เกิดข้อผิดพลาด “Not found=warning” (“Not found=empty” ในเวอร์ชันก่อนหน้า) จะตั้งค่าจำนวนพารามิเตอร์เป็น 0 และดำเนินการต่อ ซึ่งเหมาะอย่างยิ่งเมื่อคุณต้องการตรวจสอบว่าพบสตริงหรือไม่โดยไม่ทำให้สคริปต์ล้มเหลว เมื่อเปิดใช้งาน Continue on Error สคริปต์จะทำงานต่อไปแม้ภายใต้เงื่อนไข “error” แต่บันทึกเพิ่มเติมจะบันทึกไว้ด้วย
ORD ตัวเลือกเสริม ค่าเริ่มต้นคือ 1 ระบุลำดับที่หรือลำดับการตรงกัน หากคุณระบุ “ทั้งหมด” ระบบจะบันทึกค่าพารามิเตอร์ลงในอาร์เรย์ การใช้ Instance แทน ORD นั้นรองรับเพื่อความเข้ากันได้กับเวอร์ชันเก่า แต่ไม่แนะนำให้ใช้แล้ว
RB ต้อง ขอบเขตด้านขวาของพารามิเตอร์หรือข้อมูลแบบไดนามิก หากคุณไม่ได้ระบุค่า RB ระบบจะใช้ตัวอักษรทั้งหมดจนถึงจุดสิ้นสุดของข้อมูลเป็นขอบเขต พารามิเตอร์ขอบเขตนั้นคำนึงถึงตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก หากต้องการปรับแต่งข้อความค้นหาเพิ่มเติม ให้ใช้แฟล็กข้อความอย่างน้อยหนึ่งรายการ
RelFrameID สามารถเลือกหรือไม่เลือกก็ได้ ระดับลำดับชั้นของหน้า HTML เมื่อเทียบกับสิ่งที่ร้องขอ URLค่าที่เป็นไปได้คือ ALL หรือตัวเลข RelFrameID ไม่ได้รับการสนับสนุนในสคริปต์ระดับ GUI
บันทึกเลน ตัวเลือกเสริม ค่าเริ่มต้น -1 ความยาวของสตริงย่อยของค่าที่พบ โดยเริ่มจากตำแหน่งที่ระบุ เพื่อบันทึกไปยังพารามิเตอร์ ค่าเริ่มต้นจะบันทึกจนถึงท้ายสตริง
บันทึกออฟเซ็ต ตัวเลือกเสริม ค่าเริ่มต้นคือ 0 ค่าออฟเซ็ตของสตริงย่อยจากค่าที่พบ เพื่อบันทึกไปยังพารามิเตอร์ ค่าออฟเซ็ตต้องไม่ติดลบ
ค้นหา ตัวเลือกเสริม ค่าเริ่มต้นคือ ทั้งหมด ขอบเขตของการค้นหา — ตำแหน่งที่จะค้นหาข้อมูลที่คั่นด้วยตัวคั่น ค่าที่เป็นไปได้คือ Headers (ค้นหาเฉพาะส่วนหัว), Body (ค้นหาเฉพาะข้อมูลในเนื้อหา ไม่รวมส่วนหัว), No resource (ค้นหาเฉพาะเนื้อหา HTML ไม่รวมส่วนหัวและทรัพยากรทั้งหมด) หรือ ALL (ค้นหาทั้งเนื้อหา ส่วนหัว และทรัพยากร)

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

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

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

web_reg_save_param จะจับคู่ระหว่างขอบเขตด้านซ้ายและด้านขวาที่กำหนดไว้ตายตัว web_reg_save_param_regexp ตรงกับนิพจน์ปกติ ดังนั้นจึงสามารถรับมือได้แม้ว่าขอบเขตจะเปลี่ยนแปลงไปก็ตาม

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

นักบิน GitHub ฟังก์ชันนี้ร่างการเรียกใช้ฟังก์ชันและอาร์กิวเมนต์จากข้อความแสดงความคิดเห็น มันไม่สามารถมองเห็นการตอบสนองจากเซิร์ฟเวอร์ได้ ดังนั้นขอบเขตทุกอย่างที่มันแนะนำจะต้องได้รับการตรวจสอบกับข้อมูลการใช้งานจริง

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

ขอบเขตไม่ตรงกัน สาเหตุทั่วไปคือ การใช้ตัวพิมพ์ใหญ่และตัวพิมพ์เล็กไม่ตรงกัน ขอบเขตที่ปรากฏเฉพาะในหน้าอื่น หรือการค้นหาในส่วนเนื้อหาในขณะที่ค่าที่ต้องการอยู่ในส่วนหัว

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

ใช่ครับ บ่อยครั้งก็มีมากกว่านั้นด้วย โทเค็น Bearer, ฟิลด์ CSRF และตัวระบุ JSON เปลี่ยนแปลงทุกครั้งที่มีการใช้งาน ดังนั้นการรับส่งข้อมูล REST และหน้าเว็บเดียวจึงเต็มไปด้วยตัวเลือกมากมาย แม้ว่าจะไม่มีแบบฟอร์ม HTML ก็ตาม

สรุปโพสต์นี้ด้วย: