πλ€λ‘κ°κΈ°
ν
μ€νΈμ½λλ?
ν
μ€νΈμ½λλ μννΈμ¨μ΄ κ°λ° νλ‘μΈμ€μμ μ¬μ©λλ μ½λλ‘, μ£Όλ‘ νΉμ κΈ°λ₯μ΄ μ¬λ°λ₯΄κ² λμνλμ§ νμΈνκ±°λ λ²κ·Έλ₯Ό μ°Ύλ λ° μ¬μ©λλ€.
- μννΈμ¨μ΄μ νμ§μ 보μ§νκ³ μ μ§λ³΄μλ₯Ό μ©μ΄νκ² νκΈ° μν΄ νμμ μ΄λ€.
- μ½λ λ³κ²½μ¬νμ΄ λ°μνμ λ κΈ°μ‘΄ κΈ°λ₯λ€μ΄ μ μμ μΌλ‘ μλνλμ§ κ²μ¦ν μ μλ€.
- μ κ· κΈ°λ₯ μΆκ° μ κΈ°μ‘΄ κΈ°λ₯λ€κ³Όμ μνΈμμ©μ λν μμ μ±μ ν보ν μ μλ€.
TDDμ μμ¬
TDD(Test-Driven Development)λ XP(Extreme Programming)μ ν κ°μ§ μ€μ² λ°©λ²λ‘ μΌλ‘μ, Kent Beckμ΄ 2002λ
μ μ²μμΌλ‘ μκ°νλ€. κ·Έλ¬λ TDDμ κΈ°λ³Έ κ°λ
μ μ΄μ λΆν° μμμΌλ©°, 1968λ
μλ Manny Lehmanμ΄ "νλ κ²μ¦"μ΄λΌλ κ°λ
μΌλ‘ λΉμ·ν μ κ·Ό λ°©μμ μ μνλ€.
TDD μ¬μ΄ν΄
TDDλ κΈ°μ‘΄μ κ°λ° λ°©λ²κ³Ό λ¬λ¦¬ ν
μ€νΈ μ½λλ₯Ό λ¨Όμ μμ±νλ μ κ·Ό λ°©λ²μ κ°μ‘°νλ€. TDDμ μ£Όμ μ¬μ΄ν΄μ λ€μκ³Ό κ°λ€.
- μ€ν¨νλ ν
μ€νΈ μμ±
- μ κ·λ‘ μΆκ°νκ±°λ λ³κ²½νλ €λ κΈ°λ₯μ μꡬμ¬νμ λ§λ ν
μ€νΈ μΌμ΄μ€λ₯Ό μμ±νλ€.
- μ΄ μμ μμλ μμ§ ν΄λΉ κΈ°λ₯μ΄ κ΅¬νλμ§ μμμΌλ―λ‘ ν
μ€νΈλ μ€ν¨ν΄μΌ νλ€.
- μ½λ ꡬν
- ν
μ€νΈλ₯Ό ν΅κ³Όμν€κΈ° μν΄ μ΅μνμΌλ‘ νμν μ½λλ₯Ό μμ±νλ€.
- μ΄ λ¨κ³μμλ μ½λμ νμ§λ³΄λ€λ μΌλ¨ ν
μ€νΈλ₯Ό ν΅κ³Όμν€λ κ²μ μ΄μ μ λλ€.
- ν
μ€νΈ ν΅κ³Ό
- μμ±ν μ½λκ° μ΄μ μ μμ±ν ν
μ€νΈλ₯Ό ν΅κ³Όνλμ§ κ²μ¦νλ€.
- λͺ¨λ ν
μ€νΈκ° μ±κ³΅νλ©΄ ν΄λΉ μ½λκ° κΈ°λν κΈ°λ₯μ μΆ©μ‘±νλ€λ νμ μ κ°μ μ μλ€.
- 리ν©ν λ§
- ν
μ€νΈκ° μ±κ³΅ν μνμμ μ½λλ₯Ό κ°μ νκ³ λ¦¬ν©ν λ§νμ¬ μ½λμ νμ§κ³Ό κ°λ
μ±μ λμ΄λ μμ
μ μννλ€.
- μ΄λλ ν
μ€νΈλ₯Ό ν΅ν΄ μ½λκ° μ¬μ ν κΈ°λν λμμ 보μ₯ν΄μΌ νλ€.
- μ κ³Όμ μ λ°λ³΅
- μΆκ° κΈ°λ₯μ΄λ λ³κ²½ μ¬νμ΄ μκΈΈ λλ§λ€ μμ μ¬μ΄ν΄μ λ°λ³΅νλ€.