มีรูปแบบต่าง ๆ ตามสไตล์การเข้ารหัสและภาษาที่แตกต่างกัน อย่างไรก็ตามไม่ว่าคุณจะใช้ภาษาใดรูปแบบที่ใหญ่ที่สุดคือคุณ
Robert Martin เคยกล่าวไว้ว่า:
“ เมื่อการทดสอบมีความเฉพาะเจาะจงมากขึ้นรหัสก็จะกว้างขึ้น”
นั่นทำให้ฉันคิดว่า การทดสอบที่เฉพาะเจาะจงมากขึ้นหมายถึงรหัสการทดสอบเพิ่มเติม รหัสการผลิตทั่วไปมากขึ้นหมายถึงรหัสน้อยดังนั้นอัตราส่วนทดสอบ / รหัสควรเพิ่มขึ้นเมื่อรหัสวิวัฒนาการ
แต่เดี๋ยวก่อนนั่นก็ไม่ดีเหมือนกัน ในบางกรณีเช่นเมื่อคุณกำหนดอัลกอริทึมคุณอาจมีโค้ดเพียง 6-10 บรรทัดที่มี "if" สองสามครั้งและอาจมีการเรียกซ้ำ 2-3 ครั้ง ฉันบอกคุณได้ว่ารหัสนั้นอาจมีโค้ดทดสอบมากกว่า 100 บรรทัด
ในโครงการจริงสิ่งที่ยิ่งใหญ่กว่าเพียงไม่กี่อัลกอริธึมอัตราส่วนการทดสอบ / โค้ดควรอยู่ระหว่าง 1: 1 และ 2: 1 หากได้รับมากกว่า 2: 1 เป็นกลิ่นที่คุณมีการทดสอบที่ควรได้รับการปรับปรุงใหม่หรือลบออก (หรืออาจเป็นรหัสที่ยากต่อการทดสอบ) คุณควรลงทุนในจำนวนเท่า ๆ กันของการดูแลและ refactoring ในการทดสอบของคุณเช่นเดียวกับในรหัสการผลิตของคุณ
ทางใดทางหนึ่งคำตอบที่ดีที่สุดที่จะตอบคำถามของคุณอาจจะเป็น"Cyclomatic ซับซ้อน" ยิ่งความซับซ้อนของวัฏจักรของคุณสูงขึ้นเท่าใดการทดสอบที่คุณต้องเขียนให้ครอบคลุมมากขึ้นจะต้องครอบคลุมทุกกรณี