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