เทคนิคการทดสอบซอฟต์แวร์พร้อมตัวอย่างการออกแบบกรณีทดสอบ

เทคนิคการทดสอบซอฟต์แวร์คืออะไร?

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

การวิเคราะห์มูลค่าขอบเขต (BVA)

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

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

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

แนวทางการวิเคราะห์มูลค่าขอบเขต

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

ตัวอย่าง:

Input condition is valid between 1 to 10

Boundary values 0,1,2 and 9,10,11

การแบ่งชั้นความเท่าเทียมกัน

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

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

ตัวอย่าง:

เงื่อนไขอินพุตถูกต้องระหว่าง

 1 to 10 and 20 to 30

ดังนั้นจึงมีคลาสที่เท่าเทียมกันห้าคลาส

--- to 0 (invalid)
1 to 10 (valid)
11 to 19 (invalid)
20 to 30 (valid)
31 to --- (invalid)

คุณเลือกค่าจากแต่ละคลาส เช่น

-2, 3, 15, 25, 45

อ่านเพิ่มเติมเกี่ยวกับ – การวิเคราะห์ค่าขอบเขตและการทดสอบการแบ่งส่วนความเท่าเทียมกัน

การทดสอบตามตารางการตัดสินใจ

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

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

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

ต่อไปนี้เป็นขั้นตอนในการสร้างตารางการตัดสินใจ:

  • เกณฑ์อินพุตเป็นแถว
  • ป้อนกฎทั้งหมดในคอลัมน์
  • เติมตารางด้วยการผสมผสานอินพุตต่างๆ
  • ในแถวสุดท้าย ให้จดบันทึกเอาต์พุตเทียบกับชุดอินพุต

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

การทดสอบตามตารางการตัดสินใจ

การเปลี่ยนแปลงของรัฐ

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

แนวปฏิบัติสำหรับการเปลี่ยนสถานะ:

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

ตัวอย่าง:

ในตัวอย่างต่อไปนี้ หากผู้ใช้ป้อนรหัสผ่านที่ถูกต้องในสามครั้งแรก ผู้ใช้จะสามารถเข้าสู่ระบบได้สำเร็จ หากผู้ใช้ป้อนรหัสผ่านไม่ถูกต้องในการลองครั้งแรกหรือครั้งที่สอง ผู้ใช้จะได้รับแจ้งให้ป้อนรหัสผ่านอีกครั้ง เมื่อผู้ใช้ป้อนรหัสผ่านไม่ถูกต้อง 3rd เวลาดำเนินการแล้ว และบัญชีจะถูกบล็อก

แผนภาพการเปลี่ยนสถานะ

แผนภาพการเปลี่ยนสถานะ

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

ตารางการเปลี่ยนสถานะ

รหัส PIN ที่ถูกต้อง PIN ไม่ถูกต้อง
S1) เริ่มต้น S5 S2
ส2) 1st ความพยายาม S5 S3
ส3) 2nd ความพยายาม S5 S4
ส4) 3rd ความพยายาม S5 S6
S5) ให้สิทธิ์การเข้าถึงแล้ว - -
S6) บัญชีถูกบล็อก - -

ในตารางข้างต้น เมื่อผู้ใช้ป้อน PIN ที่ถูกต้อง สถานะจะเปลี่ยนเป็นได้รับสิทธิ์การเข้าถึง และหากผู้ใช้ป้อนรหัสผ่านไม่ถูกต้อง เขาหรือเธอจะถูกย้ายไปยังสถานะถัดไป ถ้าเขาทำแบบเดียวกัน 3rd เวลาเขาจะเข้าสู่สถานะถูกบล็อกบัญชี

เกิดข้อผิดพลาดในการคาดเดา

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

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

แนวทางการคาดเดาข้อผิดพลาด:

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

สรุป

  • เทคนิคการออกแบบเคสทดสอบช่วยให้คุณออกแบบเคสได้ดีขึ้น มีเทคนิคที่ใช้กันหลักๆ 5 ประการ
  • การวิเคราะห์ค่าขอบเขตกำลังทดสอบที่ขอบเขตระหว่างพาร์ติชัน
  • การแบ่งพาร์ติชันคลาสที่เทียบเท่าช่วยให้คุณสามารถแบ่งชุดเงื่อนไขการทดสอบออกเป็นพาร์ติชันซึ่งควรจะถือว่าเหมือนกัน
  • เทคนิคการทดสอบซอฟต์แวร์ Decision Table ใช้สำหรับฟังก์ชันที่ตอบสนองต่ออินพุตหรือเหตุการณ์รวมกัน
  • ในเทคนิคการเปลี่ยนสถานะ การเปลี่ยนแปลงในเงื่อนไขอินพุตจะเปลี่ยนสถานะของแอปพลิเคชันภายใต้การทดสอบ (AUT)
  • การคาดเดาข้อผิดพลาดเป็นเทคนิคการทดสอบซอฟต์แวร์ซึ่งมีพื้นฐานมาจากการคาดเดาข้อผิดพลาดซึ่งสามารถมีชัยในโค้ดได้

อ่านเพิ่มเติม readmore