Code Coverage คือ อะไร และสำคัญยังไง ?

ช่วงนี้พยายามจะดันให้ทุกคนในบริษัทเขียน Test แบบ (Automate) มันมีคำถามว่า แล้วเราจะรู้ได้ยังไง ว่า Test ที่เขียนไปมันมีคุณค่า ไม่ใช่ Test เข้าไป execute ที่ code จุดเดิมซ้ำๆ เลยเป็นที่มาของ Blog นี้ครับ โดยจะมีหัวข้อย่อยๆ ดังนี้ Code Coverage คือ อะไร ? KEY: Code Coverage มันบอกว่าเราเข้าใจ Code ที่เขียนมากแค่ไหน จากตัว Testแต่ Code ที่เขียนมา มันจะถูกต้องตาม Business ไหน มันอีกเรื่องนะ เราดู Coverage ยังไง ? Code Coverage Type ก่อนที่เราจะมาจัดกลุ่มจาก Code หยิบยับมากมาย ถ้าใครเรียนสาย SE จะมีการแปลง Code เหล่านั้นออกมาเป็น Graph ซึ่งมีซื่อเรียกว่า Control-Flow Graph เอา Code บรรทัดนั้นๆ มาแปลงเป็น Node ของ Graph ตามตัวอย่างด้านล่าง หลังจากพอเข้าใจเรื่อง Control-Flow Graph มาดูกันว่าในสาย SE เข้าจัด Coverage กันแบบไหนบ้างครับ – Statement Coverage (Line Coverage) – Branch Coverage – Condition Coverage a < b c > 10 true false false true false false true true…