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

สารบัญ
- ขั้นตอนในการเริ่มการทดสอบกล่องดำ
- ประเภทของการทดสอบกล่องดำ
- เครื่องมือสำหรับการทดสอบกล่องดำ
- ระดับที่ใช้กับการทดสอบกล่องดำ
- เทคนิคการทดสอบกล่องดำ
- ข้อดีและข้อเสียของการทดสอบกล่องดำ
- การทดสอบกล่องดำหรือการทดสอบกล่องขาวไหนดีกว่ากัน
- การทดสอบกล่องขาว
- ขั้นตอนในการเริ่มต้นการทดสอบกล่องขาว
- เทคนิคการทดสอบกล่องขาว
- ประเภทของการทดสอบกล่องขาว
- เครื่องมือสำหรับการทดสอบกล่องขาว
- ข้อดีและข้อเสียของการทดสอบกล่องขาว
- ความแตกต่างระหว่างการทดสอบกล่องขาวและกล่องดำ
- บทสรุป
- บทความแนะนำ
ตัวอย่าง:
มาดูตัวอย่างหน้าจอเข้าสู่ระบบของแอปพลิเคชันกัน หน้าจอเข้าสู่ระบบมีสองช่อง ชื่อผู้ใช้ และรหัสผ่าน เนื่องจากเป็นการทดสอบกล่องดำ ระบบจะไม่พิจารณาข้อกำหนดของรหัส ดังนั้นจะทดสอบชื่อผู้ใช้และรหัสผ่านเพื่อเข้าสู่ระบบบัญชี
ขั้นตอนในการเริ่มการทดสอบกล่องดำ
- ทำความเข้าใจข้อกำหนดข้อกำหนดของแอปพลิเคชัน
ซึ่งสามารถทำได้ผ่านความช่วยเหลือของเอกสาร SRS - เรียกร้องให้มีการประเมินปัจจัยการผลิตที่ถูกต้องและสถานการณ์การทดสอบ
- เตรียม กรณีทดสอบ
- ดำเนินการกรณีทดสอบเพื่อสร้างผลลัพธ์
- ขั้นตอนที่มีแนวโน้มล้มเหลวจะถูกทำเครื่องหมายและส่งไปยังทีมพัฒนาเพื่อแก้ไข
- ทดสอบระบบอีกครั้งเพื่อให้แน่ใจว่า ข้อบกพร่อง การแก้ไขทำงานได้ดีและไม่มีข้อบกพร่องอีกต่อไป
ประเภทของการทดสอบกล่องดำ
การทดสอบกล่องดำมีสามประเภทและมีการกล่าวถึงด้านล่าง:
- ใช้งานไม่ได้ ตู่ esting
การทดสอบกล่องดำไม่เพียงแต่ใช้เพื่อตรวจสอบคุณลักษณะและฟังก์ชันการทำงานเท่านั้น แต่ยังสามารถตรวจสอบลักษณะเพิ่มเติมของซอฟต์แวร์ได้อีกด้วย
การทดสอบ Non-Functional จะตรวจสอบว่าซอฟต์แวร์สามารถดำเนินการบางอย่างได้หรือไม่ แทนที่จะตรวจสอบว่าซอฟต์แวร์ทำงานอย่างไร - ขั้นตอนแรกคือการตั้งชื่อกิ่งและใบทั้งหมด
- a,b,c คือกิ่ง ส่วน 1,2,3 เป็นใบ
- สถานะ
- การเปลี่ยนแปลง
- เหตุการณ์
- หนังบู๊
- ขั้นแรก กำหนดค่าของ A และ B สมมติว่า A=60 และ B=50
- ประการที่สอง ตอนนี้ C ได้รับการกำหนดค่าเป็น A+B, A=60, B=50 ดังนั้น C=110
- ประการที่สาม เราจะตรวจสอบว่า C>100 หรือไม่ และในกรณีนี้ เป็นความจริง ดังนั้นเราจะได้ผลลัพธ์ที่เสร็จสิ้น
- ระบุคุณสมบัติที่จะทดสอบ
- พล็อตเส้นทางทั้งหมดในโฟลว์กราฟ
- ระบุเส้นทางที่เป็นไปได้ทั้งหมดสำหรับโฟลว์กราฟ
- เขียนกรณีทดสอบสำหรับแต่ละกราฟ
- ดำเนินการ ล้าง และทำซ้ำ
การทดสอบกล่องดำ ทดสอบฟังก์ชันเฉพาะของซอฟต์แวร์ในระหว่างกระบวนการทดสอบ การทดสอบการทำงานมุ่งเน้นไปที่ส่วนที่สำคัญที่สุดของซอฟต์แวร์และการบูรณาการระหว่างส่วนประกอบหลัก
การทดสอบกล่องดำมีประโยชน์ในการตรวจสอบว่าซอฟต์แวร์เวอร์ชันใหม่แสดงข้อบกพร่องใดๆ จากเวอร์ชันหนึ่งไปอีกเวอร์ชันหนึ่งหรือไม่ การทดสอบการถดถอยสามารถใช้ได้ทั้งในด้านการทำงานและไม่ใช่หน้าที่ของซอฟต์แวร์
เครื่องมือสำหรับการทดสอบกล่องดำ
สำหรับการทดสอบการทำงานและการถดถอย
สำหรับการทดสอบแบบไม่ใช้งาน
ระดับที่ใช้กับการทดสอบกล่องดำ
การทดสอบกล่องดำใช้ได้กับระดับต่อไปนี้
เทคนิคการทดสอบกล่องดำ
นี่คือเทคนิคการทดสอบกล่องดำ:
มาพูดคุยกันในรายละเอียด

ข้อดี | ข้อเสีย |
---|---|
ทำงานได้ดีกับตัวแปร เสียค่าใช้จ่ายในการสร้างการทดสอบน้อยลง ใช้ได้ในทุกระดับของการทดสอบ | สร้างกรณีทดสอบจำนวนมาก ไม่สามารถใช้กับตัวแปรบูลีน ใช้กับตัวแปรตรรกะไม่ได้ ไม่มีประโยชน์สำหรับภาษาที่รุนแรง |

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


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

แผนภาพการเปลี่ยนสถานะ
มันแสดงให้เห็นว่าระบบเปลี่ยนแปลงอย่างไรในปัจจัยการผลิตบางอย่าง มันมีสี่องค์ประกอบหลัก:
สถานะการเปลี่ยนผ่าน
ข้อดี | ข้อเสีย |
---|---|
ช่วยให้ผู้ทดสอบครอบคลุมสถานะที่ไม่ถูกต้อง ให้การแสดงพฤติกรรมของระบบอย่างเหมาะสม ครอบคลุมทุกเงื่อนไข | ไม่สามารถดำเนินการได้ทุกที่ เชื่อถือไม่ได้ |
ข้อผิดพลาดในการเดา: เทคนิคการทดสอบประเภทนี้สามารถเรียนรู้ได้ก็ต่อเมื่อคุณมีประสบการณ์เท่านั้น ในเทคนิคนี้ นักวิเคราะห์ใช้ประสบการณ์ของพวกเขาในการเดาปัญหาภายในแอปพลิเคชัน
ตัวอย่างเช่น: หากนักวิเคราะห์พบข้อผิดพลาดในหน้าเข้าสู่ระบบ ผู้ทดสอบจะเขียนกรณีทดสอบโดยเน้นที่หน้าเข้าสู่ระบบ
ข้อดี | ข้อเสีย |
---|---|
ชมเชยวิธีการทดสอบอื่น ๆ ทำให้การทดสอบมีประสิทธิภาพและประสิทธิผลมากขึ้น เผยให้เห็นข้อบกพร่องอย่างรวดเร็ว | หนึ่งต้องมีประสบการณ์การทดสอบ อาศัยสัญชาตญาณของผู้ทดสอบ |
ข้อดีและข้อเสียของการทดสอบกล่องดำ
ข้อดี | ข้อเสีย |
---|---|
มีประสิทธิภาพเมื่อใช้กับระบบขนาดใหญ่ ผู้ทดสอบอาจมาจากพื้นฐานที่ไม่ใช่ด้านเทคนิค การทดสอบทำจากมุมมองของผู้ใช้ การทดสอบช่วยให้คุณระบุความขัดแย้งได้ กรณีทดสอบสามารถออกแบบได้เมื่อมีการวางข้อกำหนดเฉพาะด้านการใช้งาน การทดสอบมีความสมดุลและไม่มีอคติ | กรณีทดสอบไม่ใช่เรื่องง่ายที่จะออกแบบหากไม่มีข้อกำหนดด้านฟังก์ชันการทำงาน มีโอกาสสูงที่จะมีเส้นทางที่ไม่สามารถระบุได้ในระหว่างขั้นตอนการทดสอบ การเขียนกรณีทดสอบนั้นช้าและยาก |
การทดสอบกล่องดำหรือการทดสอบกล่องขาวไหนดีกว่ากัน
เพื่อที่คุณจะต้องรู้เพียงเล็กน้อยเกี่ยวกับการทดสอบกล่องขาว
การทดสอบกล่องขาว
มันคือ การทดสอบซอฟต์แวร์ วิธีการที่ผู้ทดสอบทราบโครงสร้าง/การออกแบบ/การใช้งานรายการ ผู้ทดสอบเลือกอินพุตและกำหนดเอาต์พุตที่เหมาะสม
ชื่ออื่นๆ สำหรับการทดสอบกล่องสีขาว ได้แก่ การทดสอบกล่องแก้ว การทดสอบกล่องใส การทดสอบโครงสร้าง

ตัวอย่างเช่น:
|_+_|ขั้นตอนในการเริ่มต้นการทดสอบกล่องขาว
เทคนิคการทดสอบกล่องขาว
ประเภทของการทดสอบกล่องขาว
การทดสอบกล่องขาวมีสามประเภทและมีการกล่าวถึงด้านล่าง:
เครื่องมือสำหรับการทดสอบกล่องขาว
ข้อดีและข้อเสียของการทดสอบกล่องขาว
ข้อดี | ข้อเสีย |
---|---|
แจ้งให้ผู้ทดสอบทราบเมื่อการทดสอบเสร็จสิ้น เทคนิคค่อนข้างง่ายที่จะทำให้อัตโนมัติ การเพิ่มประสิทธิภาพกลายเป็นเรื่องง่ายสำหรับโปรแกรมเมอร์ การลบส่วนของโค้ดที่ไม่จำเป็นสำหรับการทำงานของโปรแกรมทำได้ง่ายนิดเดียว | มันค่อนข้างแพงกว่า ไม่สามารถทดสอบแต่ละเงื่อนไขของรหัสได้ ไม่พบฟังก์ชันที่ขาดหายไปของโปรแกรม |
ความแตกต่างระหว่างการทดสอบกล่องขาวและกล่องดำ
พื้นฐาน | การทดสอบกล่องดำ | การทดสอบกล่องขาว |
---|---|---|
คำนิยาม | ใช้เพื่อทดสอบซอฟต์แวร์โดยไม่มีความรู้เกี่ยวกับโครงสร้างภายใน | โครงสร้างภายในของซอฟต์แวร์เป็นที่รู้จักของผู้ทดสอบ |
ชื่ออื่น | การทดสอบตามข้อกำหนด การทดสอบพฤติกรรม การทดสอบกล่องทึบแสง การทดสอบกล่องปิด และการทดสอบตาต่อตา | การทดสอบกล่องแก้ว การทดสอบกล่องใส การทดสอบโครงสร้าง |
ฐานการทดสอบ | การทดสอบขึ้นอยู่กับความคาดหวังภายนอก | coder รู้จักการทำงานภายใน |
การใช้งาน | เหมาะสำหรับการทดสอบระดับสูง | เหมาะสำหรับการทดสอบระดับต่ำ |
ภาษาการเขียนโปรแกรม | ไม่จำเป็นต้องใช้ภาษาโปรแกรม | จำเป็นต้องใช้ภาษาโปรแกรม |
ความรู้ในการดำเนินการ | ไม่จำเป็นในการทดสอบกล่องดำ | จำเป็นต้องมีความเข้าใจอย่างถ่องแท้ในการนำไปปฏิบัติ |
ระบบอัตโนมัติ | ยากที่จะทำให้เป็นอัตโนมัติ | ง่ายต่อการอัตโนมัติ |
วัตถุประสงค์ | โดยมีวัตถุประสงค์เพื่อตรวจสอบการทำงานของระบบ | โดยมีวัตถุประสงค์เพื่อตรวจสอบคุณภาพของโค้ด |
ทดสอบโดย | ดำเนินการโดยผู้ทดสอบ ผู้ใช้ปลายทาง | มักจะทำโดยผู้ทดสอบและนักพัฒนา |
ความละเอียด | ความละเอียดต่ำ | ความละเอียดอยู่ในระดับสูง |
วิธีการทดสอบ | ตามวิธีการลองผิดลองถูก | สามารถทดสอบขอบเขตภายในได้ |
เวลา | ใช้เวลาน้อยลง | ใช้เวลานานขึ้น |
การเข้าถึงรหัส | ไม่จำเป็นต้องใช้รหัส | จำเป็นต้องมีการเข้าถึงรหัส |
บทสรุป
ทั้งการทดสอบกล่องดำและการทดสอบกล่องขาวมีความจำเป็นและส่งเสริมซึ่งกันและกัน การทดสอบกล่องขาวช่วยให้มั่นใจถึงการทำงานของโค้ดและการทดสอบในระดับสูง ในขณะที่การทดสอบกล่องดำช่วยปรับปรุงประสบการณ์ของผู้ใช้ปลายทาง ในฐานะผู้ทดสอบ คุณควรมีความรู้เกี่ยวกับการทดสอบกล่องดำเป็นอย่างดี เพื่อให้คุณสามารถทำการทดสอบได้อย่างถูกต้อง