TDD π
πΈ TIL
νμ¬μμ React Native + TypeScript λ₯Ό μ¬μ©νμ¬ νλ‘μ νΈλ₯Ό μ§ννλ©΄μ λ€λ¦κ² TDDλ₯Ό λμ νκ² λμλ€.
TDDμ νμμ±μ λλΌμ§ λͺ»νκ³ , κ·Έμ μꡬμ¬νμ ꡬννκΈ° κΈκΈνλ€λ νκ³λ‘ TDD λμ μ λ·μ μΌλ‘ 미루μλλ° νλ‘μ νΈ κΈ°λ₯μ νλνλ μΆκ°ν΄ λκ°λ©΄μ 볡μ‘ν λ‘μ§λ€μ΄ λμ΄λκ² λμκ³ κΈ°λ₯μ΄ μ λλ‘ μλνκ³ μλμ§ μΌμΌμ΄ ν μ€νΈνλ κ²λ λ²κ±°λ‘μμ‘λ€.
π μ κΈ°λ₯ꡬν, ν TDD
μ²μμλ κΈ°λ₯μ λ¨Όμ ꡬννκ³ λμ€μ TDDλ₯Ό μμ±νμ¬ ν μ€νΈνλ λ°©μμ μ μ©νμλ€.
TDDμ μλ―Έλ "ν μ€νΈ μ£Όλ κ°λ°" μΈλ° μ κΈ°λ₯ꡬν ν TDDλ₯Ό νλ€λ κ²μ TDDμ μ‘΄μ¬μλ―Έλ₯Ό μκ² λλ κ²μ΄κ³ ν μ€νΈ μ£Όλ κ°λ°μ΄λΌκ³ λ³Ό μ μλ€.
κΈ°λ₯μ λ€ κ΅¬νν ν λͺ°μμ μμ±ν ν μ€νΈ μΌμ΄μ€λ λΉμ°ν 100% μ±κ³΅νλ μΌμ΄μ€λ‘ μμ±ν μ λ°μ μμ λΏλλ¬ μ΄ μ½λλ₯Ό μ μμ±νλμ§ μλ―Έμ‘°μ°¨ λͺ νν΄μ§ μ μλ€.
ν μ€νΈμΌμ΄μ€μ ν΅κ³Όλμ§ λͺ»νλ μ½λλ₯Ό μμ±νμ¬ μ€ν¨λ₯Ό λ§μ£ΌνκΈ° μ«μλ κ²μ΄κ³ κ·Έμ " TDDκ° μ’λ€κ³ νλκΉ λ³΄μ¬μ£ΌκΈ° μμΌλ‘ λ΄ μ½λμλ λμΆ© μ±μ¬λ£μ΄λ³ΌκΉ? " λΌλ μκ°μ νλ κ²μ΄μλ€.
π μ TDD, ν κΈ°λ₯ꡬν
TDDλ₯Ό λμ ν¨μΌλ‘μ¨ μ€κ³ κ΄μ μμ μ¬λ¬ μν©λ€μ μ΄μ΄λκ³ λ³΄κ²λλλ° μ΄λ¬ν μ΄λ¦° μ€κ³ λ°©μμ΄ μμ μ± λκ³ νμ₯μ± λμ μ½λλ₯Ό μμ±νλλ° λμμ μ£Όμκ³ μ€μ μ½λμ λν λͺ νν μ²λ¦¬λ₯Ό μ€κ³ν¨μΌλ‘μ¨ κ³Όλν μ€κ³λ₯Ό νΌν μ μμλ€.
λ΄κ° μμ±ν μ½λμ λν΄μ μκ°νκ² λκ³ μ΄ μ½λλ₯Ό μ μμ±ν κ²μΈμ§μ λν΄ μλκ° μ’ λ λͺ νν΄μ§λ μ₯μ κ³Ό ν μ€νΈμΌμ΄μ€λ₯Ό 미리 μ€κ³ν¨μΌλ‘μ¨ μμλΌμΈμ΄ κ·Έλ €μ§λ€λ μ₯μ μ λλ μ μμλ€.
λ¬Όλ‘ ν μ€νΈμΌμ΄μ€λ₯Ό μμ±ν¨μΌλ‘μ¨ μ΄λ°μ μκ°μ ν μ νκ² λκΈ΄ νμ§λ§ TDDλ₯Ό μμ±νλ€λ©΄ μ€κ³μΈ‘λ©΄μμλ μ’μ μ€κ³λ₯Ό ν μ μμ κ²μ΄κ³ κ°λ° μμ°μ± λν ν₯μμμΌμ€ κ²μ΄λ€.
ν μ€νΈ μΌμ΄μ€λ₯Ό μμ±ν λμλ λλΆλΆ μμ λ¨μλ‘ λ§λ€κΈ° λλ¬Έμ μ½λλ₯Ό λͺ ννκ² λΆλ¦¬ν μ μκ³ λΆλ¦¬λ μ½λλ μμ°μ€λ½κ² λͺ¨λνκ° λμ΄ κ°λ°μ μ§ννκ² λλ€. λν μλνμ§ μμ κ°μ μ λ¬νμμ λ, νμ μ€ν¬λ¦½νΈκ° μΆ©λΆν μΉμ ν μλ¬λ₯Ό 보μ¬μ£Όκ² μ§λ§ λ μμ ν μ½λλ³΄λ€ λ μμ ν μ½λλ₯Ό μ«μ΄νλ κ°λ°μλ μμν λ μ΄ κ²λ ν° μ₯μ μ΄ λ μ μκ² λ€.
μμ§κΉμ§λ μ TDDμμ± ν κΈ°λ₯ꡬνμ΄ μ΅μνμ§ μμμ μ½λλ₯Ό μμ±νλ€λ³΄λ©΄ λ΄κ° TDDλ₯Ό μμ±νκ³ μλ€λ μ¬μ€μ μμ΄λ²λ¦¬κ² λμ§λ§ κΎΈμ€ν μ΅κ΄ν νλ€λ©΄ μ£Όλμ΄ κ°λ°μμΈ μ§κΈμ΄ TDDλ₯Ό μ΅κ΄ν νκΈ°μ λ± μ’μ μκΈ°μΌ κ²μ΄λΌκ³ λ―Ώλλ€.
λ§μΉλ©° πΈ
TDDμ μλ―Έλ "ν μ€νΈ μ£Όλ κ°λ°" μ΄λΌλ κ²μ μμ§ λ§κ³ κΈ°λ₯ꡬννκΈ° κΈκΈνμ¬ λ¬΄μμ μ½λμμ±μΌλ‘ λ¬λ €λ€μ§ λ§κ³ μ°¨κ·Όμ°¨κ·Ό TDDλ₯Ό μμ±νμ¬ ν μ€νΈκ° κ°λ°μ μ΄λμ΄ λκ° μ μλλ‘ ν΄μΌκ² λ€.
ν μ€νΈ μΌμ΄μ€κ° μλͺ» μ§μ¬μ§λ©΄ μ‘΄μ¬μ μλ―Έλ₯Ό μκ² λμ΄μ μκ°μ΄ λ§μ΄ νμνλ€.
νμ§λ§ " μ μ§μ¬μ§ ν μ€νΈ μΌμ΄μ€λ₯Ό ν΅κ³Όνλ μ’μ μ€κ³ " λ‘ λΆν° μ€λ κΈ°μ¨μ λκ»΄λ³Έλ€λ©΄ TDDλ₯Ό λμ νμ§ μμ μ΄μ κ° μλ€κ³ μκ°νλ€.
( μ΄λ κ² TDDκ° μ’λ€μ’λ€ ν΄λκ³ λ΄μΌ μΆκ·Όν΄μ μ½λλ₯Ό μμ±νλ©΄ λ λ TDD μμ±μ κΉλΉ‘νκ² μ§.............?....... μΌλ₯Έ μ΅κ΄νν΄μΌκ² λ€..........^^................π )