TDD

TDD

Tags
Web Dev
Tech
Published
Author

ν…ŒμŠ€νŠΈ 주도 개발 (test-driven development)

πŸ”₯
μ„  개발 ν›„ ν…ŒμŠ€νŠΈ 방식이 μ•„λ‹Œ μ„  ν…ŒμŠ€νŠΈ ν›„ 개발 λ°©μ‹μ˜ ν”„λ‘œκ·Έλž˜λ° 방법
notion image

ν…ŒμŠ€νŠΈ 주도 개발

  1. μ‹€νŒ¨ν•˜λŠ” ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό λ¨Όμ € μž‘μ„±
  1. ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μ„±κ³΅μ‹œν‚€κΈ° μœ„ν•œ μ‹€μ œ μ½”λ“œλ₯Ό μž‘μ„±
  1. 쀑볡 μ½”λ“œ 제거, μΌλ°˜ν™” λ“±μ˜ λ¦¬νŒ©ν† λ§μ„ μˆ˜ν–‰

일반 개발 상식

notion image
  • μš”κ΅¬μ‚¬ν•­ 뢄석 β†’ 섀계 β†’ 개발 β†’ ν…ŒμŠ€νŠΈ β†’ 배포

TDD 개발 상식

notion image

TDD의 효과

  1. 디버깅 μ‹œκ°„μ„ 단좕 ν•  수 μžˆλ‹€.
  1. μ½”λ“œκ°€ λ‚΄ 손을 λ²—μ–΄λ‚˜κΈ° 전에 κ°€μž₯ λΉ λ₯΄κ²Œ ν”Όλ“œλ°± 받을 수 μžˆλ‹€.
  1. μž‘μ„±ν•œ μ½”λ“œκ°€ κ°€μ§€λŠ” λΆˆμ•ˆμ •μ„±μ„ κ°œμ„ ν•˜μ—¬ 생산성을 높일 수 μžˆλ‹€.
  1. μž¬μ„€κ³„ μ‹œκ°„μ„ 단좕 ν•  수 μžˆλ‹€.
  1. μΆ”κ°€ κ΅¬ν˜„μ΄ μš©μ΄ν•˜λ‹€.

Enzyme

μ»΄ν¬λ„ŒνŠΈμ˜ λ‚΄λΆ€μ˜ props, stateλ₯Ό ν™•μΈν•˜λŠ” λ“± μ»΄ν¬λ„ŒνŠΈμ˜ λ‚΄λΆ€ κΈ°λŠ₯에 집쀑

Testing Library

λ Œλ”λœ 결과에 집쀑, μ‹€μ œ 화면에 μ–΄λ–€ 것이 λ³΄μ—¬μ§€λŠ”μ§€, DOM에 집쀑

JEST

notion image
notion image
  • describeλŠ” ν…ŒμŠ€νŠΈ 그룹을 λ¬Άμ–΄μ£ΌλŠ” μ—­ν• 
  • toXxxλΆ€λΆ„μ—μ„œ μ‚¬μš”μ˜€λ””λŠ” ν•¨μˆ˜λ₯Ό ν”νžˆ Test Mathcer
  • expect(a+b).toEqual(3) λŠ” a+b의 κΈ°λŒ€κ°’μ΄ 3κ³Ό κ°™μœΌλ©΄ true

Puppeteer

?
Β