การทดสอบหน่วยกล่องดำคืออะไร
ฉันเพิ่งสอบครั้งสุดท้ายของฉันสำหรับหลักสูตรวิศวกรรมซอฟต์แวร์สำหรับโปรแกรมปริญญาโทของฉันและหนึ่งในคำถามในการสอบมีดังต่อไปนี้: Unit Testing is considered: a. White-box Testing b. Black-box Testing c. Either ในประสบการณ์การพัฒนาซอฟต์แวร์ 7 ปีของฉันการทดสอบหน่วยได้ใช้แนวทางกล่องสีขาวเสมอ ผู้ทดสอบมีความรู้เต็มรูปแบบเกี่ยวกับการใช้งานหน่วยการเรียนรู้ในขณะที่เขียนการทดสอบ การทดสอบกล่องดำมาในภายหลังในรูปแบบของการรวมระบบและการทดสอบการยอมรับ อย่างไรก็ตามคำตอบที่ถูกต้องในการสอบ (ตามอาจารย์) คือการทดสอบหน่วยสามารถเป็นการทดสอบกล่องสีขาวหรือกล่องดำ ฉันได้ทำการวิจัยมาแล้วและดูเหมือนว่าหลาย ๆ กรณี "การทดสอบหน่วยกล่องดำ" ถูกใช้เพื่ออธิบายวิธีการทดสอบครั้งแรกที่การทดสอบหน่วยถูกเขียนขึ้นก่อนรหัสคือ อย่างไรก็ตามในความคิดของฉันนี้ยังคงทดสอบกล่องสีขาว ในขณะที่การใช้งานยังไม่มีอยู่ใครก็ตามที่กำลังเขียนการทดสอบโดยทั่วไปมีความคิดที่ดีเกี่ยวกับการใช้งานซอร์สโค้ด ใครช่วยอธิบายให้ฉันฟังว่าการทดสอบหน่วยกล่องดำทำงานอย่างไร (ถ้ามันเป็นเรื่องจริง) และแตกต่างจากการทดสอบยูนิตกล่องขาวอย่างไร