Skip to content

Latest commit

Β 

History

History
30 lines (24 loc) Β· 1.88 KB

File metadata and controls

30 lines (24 loc) Β· 1.88 KB

Chapter 9

9.1 TDD 법칙 μ„Έ κ°€μ§€

  • TDD 법칙 μ„Έκ°€μ§€λŠ” 첫 번째 법칙: μ‹€νŒ¨ν•˜λŠ” λ‹¨μœ„ ν…ŒμŠ€νŠΈλ₯Ό μž‘μ„±ν•  λ•ŒκΉŒμ§€ μ‹€μ œ μ½”λ“œλ₯Ό μž‘μ„±ν•˜μ§€ μ•ŠλŠ”λ‹€. 두 번째 법칙: μ»΄νŒŒμΌμ€ μ‹€νŒ¨ν•˜μ§€ μ•ŠμœΌλ©΄μ„œ 싀행이 μ‹€νŒ¨ν•˜λŠ” μ •λ„λ‘œλ§Œ λ‹¨μœ„ ν…ŒμŠ€νŠΈλ₯Ό μž‘μ„±ν•œλ‹€. μ„Έ 번째 법칙: ν˜„μž¬ μ‹€νŒ¨ν•˜λŠ” ν…ŒμŠ€νŠΈλ₯Ό 톡과할 μ •λ„λ‘œλ§Œ μ‹€μ œ μ½”λ“œλ₯Ό μž‘μ„±ν•œλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ μ‹€μ œ μ½”λ“œλ₯Ό μ „λΆ€ ν…ŒμŠ€νŠΈν•˜λŠ” ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€κ°€ λ‚˜μ˜€μ§€λ§Œ, λ°©λŒ€ν•œ ν…ŒμŠ€νŠΈ μ½”λ“œμ˜ 관리 문제λ₯Ό μœ λ°œν•˜κΈ°λ„ ν•œλ‹€.

9.2 클린 ν…ŒμŠ€νŠΈ μ½”λ“œ μœ μ§€ν•˜κΈ°

  • ν…ŒμŠ€νŠΈ μ½”λ“œλŠ” μ‹€μ œ μ½”λ“œ λͺ»μ§€μ•Šκ²Œ μ€‘μš”ν•˜λ‹€.
  • ν…ŒμŠ€νŠΈλŠ” μ½”λ“œμ— μœ μ—°μ„±, μœ μ§€λ³΄μˆ˜μ„±, μž¬μ‚¬μš©μ„± λ“± -성을 μ œκ³΅ν•œλ‹€.

9.3 클린 ν…ŒμŠ€νŠΈ μ½”λ“œ

  • ν…ŒμŠ€νŠΈ μ½”λ“œλŠ” μž‘λ‹€ν•˜κ³  μ„Έμ„Έν•œ 사항이 많으면 μ•ˆλœλ‹€. κ°„κ²°ν•˜κ³  ν‘œν˜„λ ₯이 ν’λΆ€ν•œ μ½”λ“œλ‘œ λ¦¬νŒ©ν† λ§ ν•˜μž! ν…ŒμŠ€νŠΈ μ½”λ“œκ°€ 효율적일 ν•„μš”λŠ” μ—†λ‹€. ν•˜μ§€λ§Œ μ½”λ“œμ˜ 깨끗함은 μ€‘μš”ν•˜λ‹€.

9.4 ν…ŒμŠ€νŠΈ λ‹Ή assert ν•˜λ‚˜

  • assert문이 μ—¬λŸ¬κ°œ λ“€μ–΄κ°ˆ μˆ˜λ„ μžˆλ‹€. ν•˜μ§€λ§Œ μ΅œλŒ€ν•œ μ€„μ΄λŠ” 것이 μ’‹λ‹€. λ˜ν•œ ν…ŒμŠ€νŠΈ ν•¨μˆ˜ ν•˜λ‚˜λŠ” κ°œλ… ν•˜λ‚˜λ§Œ ν…ŒμŠ€νŠΈν•΄μ•Όν•œλ‹€.

9.5 F.I.R.S.T

  • 클린 ν…ŒμŠ€νŠΈμ˜ λ‹€μ„― κ°€μ§€ κ·œμΉ™
  1. λΉ λ₯΄κ²Œ(Fast) : ν…ŒμŠ€νŠΈλŠ” 빨라야 ν•œλ‹€.(9.3의 이쀑 ν‘œμ€€κ³Ό μƒμΆ©λ˜μ§€ μ•Šλ‚˜?)
  2. λ…λ¦½μ μœΌλ‘œ(Independent) : ν…ŒμŠ€νŠΈλŠ” μ„œλ‘œ μ˜μ‘΄ν•˜λ©΄ μ•ˆλœλ‹€.
  3. 반볡 κ°€λŠ₯ν•˜κ²Œ(Repeatable) : ν…ŒμŠ€νŠΈλŠ” μ–΄λ–€ ν™˜κ²½μ—μ„œλ„ 반볡이 κ°€λŠ₯ν•΄μ•Ό ν•œλ‹€.
  4. μžκ°€ κ²€μ¦ν•˜λŠ”(Self-Validating) : ν…ŒμŠ€νŠΈλŠ” boolκ°’μœΌλ‘œ κ²°κ³Όλ₯Ό λ‚΄μ•Ό ν•œλ‹€.
  5. μ μ‹œμ—(Timely) : ν…ŒμŠ€νŠΈ μ½”λ“œλŠ” μ‹€μ œ μ½”λ“œλ₯Ό κ΅¬ν˜„ν•˜κΈ° 직전에 κ΅¬ν˜„ν•œλ‹€.

9.6 κ²°λ‘ 

  • ν…ŒμŠ€νŠΈ μ½”λ“œλŠ” μ–΄μ©Œλ©΄ μ‹€μ œ μ½”λ“œλ³΄λ‹€ 더 μ€‘μš”ν• μ§€ λͺ¨λ₯Έλ‹€. ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό κΉ¨λ—ν•˜κ²Œ μœ μ§€ν•˜μž!