Testing Tools

ν•™μŠ΅ ν‚€μ›Œλ“œ

  • Jest

    • Describe-Context-It νŒ¨ν„΄

  • React Testing Library

Test

πŸ“– Testλž€ 무엇인가?

  • ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜μ—¬ 였λ₯˜μ™€ 결함을 κ²€μΆœν•˜κ³  μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ μš”κ΅¬μ‚¬ν•­μ— 맞게 λ™μž‘ν•˜λŠ”μ§€ κ²€μ¦ν•˜λŠ” 절차

    λ‚΄κ°€ μž‘μ„±ν•œ μ½”λ“œκ°€ λ‚΄κ°€ μ˜λ„ν•œλŒ€λ‘œ λ™μž‘ν•˜λŠ”μ§€ κ²€μ‚¬ν•˜λŠ”κ²ƒ by.ν—€λ‹€

  • Static Test (정적 ν…ŒμŠ€νŠΈ)

    • νƒ€μž…μ˜€λ₯˜μ™€ ꡬ문였λ₯˜λ₯Ό 감지해 μ•Œλ €μ€˜μ„œ λŸ°νƒ€μž„ μ—λŸ¬λ₯Ό 방지할 수 μžˆλ‹€.

    • ν…ŒμŠ€νŠΈ 도ꡬ : TypeScript, eslint

  • Unit Test (λ‹¨μœ„ν…ŒμŠ€νŠΈ)

    • ν•˜λ‚˜μ˜ ν•¨μˆ˜, λ©”μ†Œλ“œ, 클래슀, λͺ¨λ“ˆλ“±μ΄ μ˜λ„ν•œ λŒ€λ‘œ μž‘λ™ν•˜λŠ”μ§€ ν…ŒμŠ€νŠΈ

    • ν…ŒμŠ€νŠΈ 도ꡬ : Jest, mocha, react-testing-library λ“±

  • Integration Test (ν†΅ν•©ν…ŒμŠ€νŠΈ)

    • μ—¬λŸ¬κ°œμ˜ λͺ¨λ“ˆ, μ»΄ν¬λ„ŒνŠΈ 등이 μƒν˜Έμž‘μš©ν•˜μ—¬ 잘 μž‘λ™ν•˜λŠ”μ§€ ν…ŒμŠ€νŠΈ

    • λΉ„μ¦ˆλ‹ˆμŠ€ 둜직과 μ—°κ΄€λœ ν…ŒμŠ€νŠΈ

    • ν…ŒμŠ€νŠΈ 도ꡬ : react-testing-library, Enzyme λ“±

  • E2E Test

    • μ‚¬μš©μžκ°€ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ κ²½ν—˜ν•  κ²ƒμœΌλ‘œ μ˜ˆμƒλ˜λŠ” 행동을 μ½”λ“œλ‘œ μž‘μ„±ν•΄ κ²€μ¦ν•˜λŠ” ν…ŒμŠ€νŠΈ

    • ν…ŒμŠ€νŠΈ 도ꡬ : cypress, puppeteer λ“±

Testing Tools

  • μ—¬λŸ¬ ν…ŒμŠ€νŠΈ λ„κ΅¬μ˜ λ„μ›€μœΌλ‘œ ν”„λ‘ νŠΈμ—”λ“œ κ°œλ°œμžκ°€ μˆ˜ν–‰ν•΄μ™”λ˜ 반볡된 ν…ŒμŠ€νŠΈλ₯Ό μžλ™ν™”ν•  수 μžˆλ‹€.

  • 도ꡬλ₯Ό μ‚¬μš©ν•¨μ— 따라 ν…ŒμŠ€νŠΈμ˜ μœ ν˜•λ³„λ‘œ ν…ŒμŠ€νŠΈκ°€ κ°€λŠ₯해진닀.

Jest

  • νŽ˜μ΄μŠ€λΆμ—μ„œ κ°œλ°œν•œ μžλ°”μŠ€ν¬λ¦½νŠΈ ν…ŒμŠ€νŒ… ν”„λ ˆμž„μ›Œν¬

  • ν”„λ‘ νŠΈμ—”λ“œ 뿐만 μ•„λ‹ˆλΌ Node.jsν™˜κ²½μ— κ΅¬μΆ•λœ λ°±μ—”λ“œ μ• ν”Œλ¦¬μΌ€μ…˜λ„ ν…ŒμŠ€νŠΈν•  수 μžˆλ‹€.

  • 단언(assertion)뿐만 μ•„λ‹ˆλΌ λͺ¨ν‚Ή, μŠ€λƒ…μƒ·, ν…ŒμŠ€νŒ…, μ½”λ“œ 컀버리지 λ“± λ‹€μ–‘ν•œ APIλ₯Ό 제곡

Testing Library (React Testing Library)

  • UIλ₯Ό μ‚¬μš©μž κ΄€μ μ—μ„œ ν…ŒμŠ€νŠΈ ν•  수 μžˆλ„λ‘ λ„μ™€μ£ΌλŠ” 라이브러리

  • μ‹€μ œ μ‚¬μš©μž κ²½ν—˜κ³Ό μœ μ‚¬ν•œ λ°©μ‹μ˜ ν…ŒμŠ€νŠΈλ₯Ό ν•˜κΈ° μœ„ν•œ μš©λ„λ‘œ μ‚¬μš©

πŸ”— μ°Έκ³ 

Last updated