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

การทดสอบอย่างละเอียดถี่ถ้วนนั้นทำได้ยากเนื่องจากข้อจำกัดด้านเวลาและการจัดเรียง การแบ่งส่วนสมมูลและการวิเคราะห์ค่าขอบเขตช่วยแก้ปัญหานี้ได้โดยการจัดกลุ่มping ใช้ข้อมูลป้อนเข้าที่คล้ายคลึงกันและกำหนดเป้าหมายที่ขอบเพื่อให้ครอบคลุมมากขึ้นด้วยจำนวนเคสที่น้อยลง
การแบ่งส่วนความเท่าเทียมกันคืออะไร?
การแบ่งส่วนความเท่าเทียมกัน การแบ่งกลุ่มตามค่าเทียบเท่า (หรือเรียกอีกอย่างว่า Equivalence Class Partitioning หรือ ECP) เป็นเทคนิคแบบกล่องดำที่แบ่งข้อมูลอินพุตออกเป็นกลุ่มที่มีค่าเทียบเท่ากัน ผู้ทดสอบจะเลือกตัวแทนหนึ่งตัวต่อกลุ่ม โดยสมมติว่าซอฟต์แวร์ทำงานเหมือนกันสำหรับทุกสมาชิกในกลุ่ม
- แบ่งโดเมนอินพุตออกเป็นกลุ่มความเท่าเทียมกันที่ถูกต้องและไม่ถูกต้อง
- ใช้ได้กับทุกกรณี ระดับการทดสอบ—หน่วย การบูรณาการ ระบบ และการยอมรับ
การวิเคราะห์ค่าขอบเขตคืออะไร?
การวิเคราะห์มูลค่าขอบเขต (BVA)หรือที่เรียกว่าการตรวจสอบช่วงค่า จะตรวจสอบความถูกต้องของค่าสุดขั้วแต่ละระดับความเท่าเทียมกัน เนื่องจากข้อบกพร่องมักกระจุกตัวอยู่ที่ขอบเขตของช่วงค่า BVA จึงมุ่งเป้าไปที่ประเด็นสำคัญ 5 ประการ:
- วางหลักประกันขั้นต่ำ
- เกินกว่าขั้นต่ำเท่านั้น
- ค่าเล็กน้อย
- ต่ำกว่าค่าสูงสุดเพียงเล็กน้อย
- สูงสุด
BVA เป็นส่วนเสริมของการแบ่งกลุ่มตามความเท่าเทียมกัน: เมื่อกำหนดคลาสแล้ว ค่าขอบเขตของคลาสจะปรากฏขึ้นพร้อมกับค่าที่คลาดเคลื่อนไปหนึ่งค่าและข้อผิดพลาดที่ขอบ
เหตุใดจึงต้องใช้การแบ่งส่วนสมมูลและการวิเคราะห์ค่าขอบเขต?
การเลือกชุดทดสอบอย่างชาญฉลาดเป็นสิ่งสำคัญเมื่อจำนวนชุดทดสอบมีมากเกินกว่าที่จะทดสอบได้อย่างครบถ้วน เทคนิคเหล่านี้มีข้อดีสามประการ:
- บีบอัดข้อมูลชุดทดสอบขนาดใหญ่ให้เป็นส่วนย่อยที่จัดการได้ง่ายขึ้น
- กำหนดหลักเกณฑ์ที่ชัดเจนสำหรับการเลือกข้อมูลทดสอบโดยไม่ลดทอนประสิทธิภาพ
- เหมาะสำหรับแอปพลิเคชันที่ต้องใช้การคำนวณอย่างหนักและมีตัวแปรเชิงตัวเลขจำนวนมาก
วิธีการดำเนินการแบ่งกลุ่มความเท่าเทียมกัน (ตัวอย่าง)
- พิจารณาช่องข้อความสั่งพิซซ่าด้านล่างนี้
- จำนวน 1–10 ถูกต้อง และจะแสดงข้อความแจ้งว่าสำเร็จ
- จำนวนสินค้าตั้งแต่ 11–99 ไม่ถูกต้อง ทำให้เกิดข้อผิดพลาด “สั่งพิซซ่าได้เพียง 10 ชิ้นเท่านั้น”.
เงื่อนไขการทดสอบ:
- ตัวเลขใดๆ ที่มากกว่า 10 ถือว่าไม่ถูกต้อง
- ตัวเลขใดๆ ที่ต่ำกว่า 1 ถือว่าไม่ถูกต้อง
- Numbers ข้อ 1–10 ถือว่าถูกต้อง
- ตัวเลขสามหลักใดๆ เช่น -100 ถือว่าไม่ถูกต้อง
การทดสอบทุกค่าทำให้เกิดกรณีมากกว่า 100 กรณี การแบ่งกลุ่มตามความเท่าเทียมกันจะจัดกลุ่มโดเมนออกเป็นกลุ่มที่มีพฤติกรรมเหมือนกัน
กลุ่มเหล่านี้เรียกว่า คลาสเทียบเท่าเลือกค่าหนึ่งค่าต่อคลาส หากค่านี้ผ่าน ค่าอื่นๆ ก็จะผ่านทั้งหมด หากค่านี้ไม่ผ่าน ค่าทั้งหมดในคลาสนั้นก็จะล้มเหลว
วิธีดำเนินการวิเคราะห์ค่าขอบเขต (ตัวอย่าง)
โดยใช้ฟิลด์ Pizza เดียวกัน BVA จะตรวจสอบขอบของพาร์ติชันแทนที่จะตรวจสอบค่าที่กำหนดไว้ ผู้ทดสอบจะประเมินค่า 0, 1, 10 และ 11 ซึ่งครอบคลุมขอบเขตที่ถูกต้องและไม่ถูกต้อง
สำหรับอินพุตที่ยอมรับค่า 1 ถึง 10 กรณีทดสอบขอบเขตมีดังนี้:
| สถานการณ์ทดสอบ Descriptไอออน | ผลลัพธ์ที่คาดหวัง |
|---|---|
| ค่าขอบเขต = 0 | ระบบไม่ควรยอมรับ |
| ค่าขอบเขต = 1 | ระบบควรยอมรับ |
| ค่าขอบเขต = 2 | ระบบควรยอมรับ |
| ค่าขอบเขต = 9 | ระบบควรยอมรับ |
| ค่าขอบเขต = 10 | ระบบควรยอมรับ |
| ค่าขอบเขต = 11 | ระบบไม่ควรยอมรับ |
การแบ่งส่วนสมมูลเทียบกับการวิเคราะห์ค่าขอบเขต
ทั้งสองวิธีช่วยลดปริมาณการทดสอบ แต่แตกต่างกันที่จุดเน้นและระยะเวลา
| แง่มุม | การแบ่งส่วนความเท่าเทียมกัน | การวิเคราะห์มูลค่าขอบเขต |
|---|---|---|
| โฟกัส | กลุ่มของปัจจัยนำเข้าที่เทียบเท่ากัน | ขอบของแต่ละกลุ่ม |
| การเลือกข้อมูล | หนึ่งค่าต่อคลาส | ค่าต่ำสุด, ค่าใกล้เคียงค่าต่ำสุด, ค่าปกติ, ค่าใกล้เคียงค่าสูงสุด, ค่าสูงสุด |
| เหมาะสำหรับ | ลดจำนวนเคสที่ซ้ำซ้อน | การตรวจจับข้อบกพร่องที่คลาดเคลื่อนไปหนึ่งตำแหน่ง |
| สั่งซื้อ | นำไปใช้ก่อน | นำไปใช้ถัดไป |
ตัวอย่าง: การตรวจสอบความถูกต้องของช่องรหัสผ่าน
ช่องป้อนรหัสผ่านที่รับอักขระได้ 6 ถึง 10 ตัว จะแบ่งออกเป็นสามส่วน ได้แก่ 0-5, 6-10 และ 11-14 โดยแต่ละส่วนจะให้ผลลัพธ์ที่เท่ากัน
| # | สถานการณ์ทดสอบ | ผลลัพธ์ที่คาดหวัง |
|---|---|---|
| 1 | ป้อนอักขระ 0 ถึง 5 ตัว | ระบบไม่ควรยอมรับ |
| 2 | ป้อนอักขระ 6 ถึง 10 ตัว | ระบบควรยอมรับ |
| 3 | ป้อนอักขระ 11 ถึง 14 ตัว | ระบบไม่ควรยอมรับ |
แนวปฏิบัติที่ดีที่สุดสำหรับการแบ่งส่วนความเท่าเทียมกันและ BVA
ปฏิบัติตามแนวทางเหล่านี้เพื่อรักษาระดับความครอบคลุมให้แข็งแกร่งในขณะที่ควบคุมจำนวนการตรวจ:
- จัดทำแผนที่โดเมนทุกโดเมน: แสดงรายการพาร์ติชันที่ถูกต้อง ไม่ถูกต้อง และกรณีพิเศษก่อน
- ทดสอบทั้งสองด้านของแต่ละขีดจำกัด: รวมค่าทั้งด้านในและด้านนอกเพื่อตรวจจับข้อผิดพลาดที่เกิดจากการคลาดเคลื่อนไปหนึ่งค่า
- ผสมผสานเทคนิคต่างๆ: ใช้ร่วมกับตารางการตัดสินใจหรือการทดสอบการเปลี่ยนสถานะสำหรับตรรกะที่ซับซ้อน
- ทำการทำงานอัตโนมัติสำหรับกรณีพิเศษ: กำหนดค่าขอบเขตให้เป็นพารามิเตอร์เพื่อให้ชุดการทดสอบการถดถอยทำงานได้อย่างสม่ำเสมอ
ประเด็นที่สำคัญ
- การแบ่งกลุ่มตามความเท่าเทียมกันจะจัดกลุ่มข้อมูลป้อนเข้าที่คล้ายคลึงกัน โดยให้ค่าเดียวต่อกลุ่มก็เพียงพอแล้ว
- การวิเคราะห์ค่าขอบเขต (Boundary Value Analysis) ตรวจสอบความถูกต้องของขอบเขตการแบ่งส่วนและขอบที่ถูกต้อง/ไม่ถูกต้อง
- ทั้งสองเป็นเทคนิคแบบกล่องดำสำหรับฟิลด์ตัวเลขหรือฟิลด์ที่อิงตามช่วงค่า
- การรวมวิธีการเหล่านี้เข้าด้วยกันจะช่วยลดปริมาณการทดสอบโดยไม่ลดคุณภาพการตรวจจับข้อบกพร่อง
วิดีโอการวิเคราะห์ค่าขอบเขตและการแบ่งพาร์ติชันที่เท่ากัน
คลิก Good Farm Animal Welfare Awards หากไม่สามารถเข้าถึงวิดีโอได้




