기본 콘텐츠로 건너뛰기

추천 가젯

리액트 + 비트(Vite)로 모바일 청첩장 만들기 — 1편

모바일 청첩장 시리즈 1편 · 기획/스택/배포 리액트 + 비트(Vite)로 모바일 청첩장 만들기 — 1편 안녕하세요, 이번에 결혼 준비를 하면서 여자친구와 같이 모바일 청첩장 을 만들고 있어요. 여자친구가 디자인을 해서 전달해주면 제가 개발을 진행하고 있어요. 이 글은 구현기 1편 으로, 전체 흐름과 스택, 배포 구성까지 “부담 없이” 훑어봅니다. (코드는 여러 버전 테스트 중!) 이 글에서 보는 것 왜 SPA 모바일 청첩장인가? 기본 스택 & 폴더 구조 라우팅 선택: HashRouter가 편한 이유 Cloudflare Pages로 자동 배포 현재 진행 중인 UI 버전들(테스트 기록) 1) 왜 SPA 모바일 청첩장인가? 모바일 청첩장은 핵심이 명확해요. 가볍고 빠르고 끊김이 없어야 하고, 사진/지도/일정이 터치에 친화적 이어야 합니다. 그래서 React + Vite 로 싱글 페이지 앱(SPA)을 구성했고, 정적 호스팅(CDN)인 Cloudflare Pages 에 올려 GitHub 푸시 → 자동 배포 까지 한 번에 묶었습니다. UX 팁 · 이미지 WebP, loading="lazy" 기본 · 큰 터치 타깃 · BGM은 “사용자 탭 후” 재생(모바일 정책) 2) 기본 스택 & 폴더 구조 서버는 따로 두지 않았고, 정적 빌드 결과물( dist/ )만 올립니다. 현재 의존성은 아래와 같아요. package.json(요약) { "name": ...

파이썬 unittest 모듈 입문 ✅

Testing icon

파이썬 unittest 모듈 입문 ✅

unittest는 파이썬의 표준 단위 테스트 프레임워크입니다. 함수나 클래스의 동작을 자동으로 검증하여 코드의 품질을 높이는 데 필수적인 도구입니다.

1. 간단한 함수 테스트 작성

# calc.py
def add(a, b):
    return a + b

# test_calc.py
import unittest
from calc import add

class TestCalc(unittest.TestCase):
    def test_add(self):
        self.assertEqual(add(2, 3), 5)
        self.assertEqual(add(-1, 1), 0)

if __name__ == '__main__':
    unittest.main()

2. `setUp()`과 `tearDown()`으로 반복 작업 처리

# test_list.py
import unittest

class TestList(unittest.TestCase):
    def setUp(self):
        self.lst = [1, 2, 3]

    def tearDown(self):
        self.lst.clear()

    def test_append(self):
        self.lst.append(4)
        self.assertIn(4, self.lst)

    def test_pop(self):
        value = self.lst.pop()
        self.assertEqual(value, 3)

if __name__ == '__main__':
    unittest.main()

3. 예외 발생 테스트

# test_divide.py
import unittest

def divide(a, b):
    return a / b

class TestDivide(unittest.TestCase):
    def test_zero_division(self):
        with self.assertRaises(ZeroDivisionError):
            divide(1, 0)

if __name__ == '__main__':
    unittest.main()

4. 테스트 실행 및 결과 확인

$ python -m unittest discover
...
----------------------------------------------------------------------
Ran 5 tests in 0.002s

OK

요약

  • TestCase 클래스로 테스트 케이스 작성
  • assertEqual, assertIn, assertRaises 등 다양한 검증 메서드 제공
  • setUp/tearDown으로 테스트 초기화 및 정리 작업 수행
  • `unittest discover`로 프로젝트 전체 테스트 자동 실행 가능

댓글

가장 많이 본 글

Icons by Flaticon