태그: Testing
13편
-
Vitest 테스트 프레임워크: Jest와의 차이, 모킹·커버리지·스냅샷과 CI 마이그레이션
Vitest가 Vite의 resolve·define·변환 설정을 그대로 공유해 Jest보다 설정이 줄어드는 이유를 설명하고, vi.mock과 vi.spyOn 모킹, 가짜 타이머, v8 커버리지, 스냅샷, 비동기 테스트 패턴, CI 구성과 Jest에서 옮기는 절차를 다룹니다.
-
Playwright E2E 테스트 심화: Selenium·Cypress 비교, 설정 최적화, 병렬 실행, 비주얼 회귀
Playwright로 E2E 테스트를 구축하는 방법. Selenium·Cypress와의 비교, 설치와 초기 설정, 기본·고급 테스트 패턴, 설정 최적화, CI/CD 통합, 디버깅 도구, 비주얼 리그레션 테스트를 예제로 다룹니다.
-
Vitest Browser Mode: 실제 브라우저에서 DOM·상호작용·비주얼 회귀 테스트, Playwright 프로바이더
jsdom으로는 재현되지 않는 레이아웃·포커스·실제 이벤트 문제를 Vitest Browser Mode로 실제 브라우저에서 테스트하는 방법을 다룹니다. Playwright·WebdriverIO 프로바이더 설정, page 로케이터와 userEvent, toMatchScreenshot 비주얼 회귀, CI 구성까지 설명합니다.
-
Testing Library로 사용자 관점 테스트: 쿼리 우선순위, User Events, 비동기 대기, 폼, Vue
Testing Library로 사용자 중심 테스트를 작성하는 방법. 설치와 설정, React 기본 테스트, 쿼리와 변형(getBy·queryBy·findBy), User Events, 비동기 테스트, 폼 테스트, Vue 통합을 예제로 정리합니다.
-
Storybook으로 컴포넌트 개발하기: Story 작성, Args·Actions, Decorators, Addons, 비주얼 테스트
Storybook으로 UI 컴포넌트를 개발하고 문서화하는 방법. 설치와 설정, Story 작성, Args와 Actions, Decorators, Parameters, Addons, Vue 통합, 비주얼 테스트를 예제로 정리합니다.
-
Puppeteer로 브라우저 자동화: 스크래핑, 스크린샷·PDF 생성, 폼 자동화, 대기 전략
Puppeteer가 Chrome DevTools Protocol을 감싸는 구조와 Playwright·Selenium 비교, 헤드리스 브라우저로 텍스트 스크래핑, 전체 페이지·요소 스크린샷, PDF 생성, 로그인·파일 업로드 폼 자동화, waitForSelector 대기 전략을 다룹니다.
-
Jest 실전 테스트 가이드 | 플레이키 테스트·Mock·Snapshot·Coverage 트러블슈팅
jest.mock 호이스팅 때문에 mock이 적용되지 않는 문제, Fake Timers와 MSW로 테스트를 결정적으로 만드는 방법, 스냅샷 남용과 커버리지 숫자의 함정, 종료되지 않는 Jest 프로세스를 --detectOpenHandles로 찾는 법을 다룹니다.
-
MSW로 API 모킹하기: 핸들러 정의, 브라우저·Node 통합, 에러 시뮬레이션, 테스트와 GraphQL
MSW(Mock Service Worker)로 API를 모킹하는 방법. 핸들러 정의, Response Resolver, 브라우저와 Node 통합, 에러 시뮬레이션, 테스트에서 사용하기, GraphQL 모킹을 예제로 정리합니다.
-
Cypress E2E 테스트 운영: 안정적인 셀렉터, 로그인 세션 재사용, 아키텍처와 커버리지
Cypress E2E 테스트를 안정적으로 운영하는 방법. 셀렉터 전략, API 모킹, 인증 세션 처리, CI/CD 통합, Cypress 아키텍처와 intercept 동작, 커버리지 수집을 예제로 정리합니다.
-
Rust 테스팅 | 단위 테스트, 통합 테스트, 벤치마크
Rust 테스트 작성법. #[test] 단위 테스트와 assert 매크로, should_panic, Result를 반환하는 테스트, tests/ 디렉토리의 통합 테스트와 공통 모듈 구성, 계산기 예제를 정리합니다.
-
Google Test로 C++ 단위 테스트 시작하기: EXPECT vs ASSERT, Fixture, Mock, Catch2 비교
C++ 단위 테스트 정리. Google Test 설치와 EXPECT·ASSERT 매크로 차이, Fixture와 매개변수화 테스트, Mock 객체, Catch2 사용법, TDD 흐름을 예제로 다룹니다.
-
C++ 코드 커버리지 측정: gcov·lcov 리포트, Google Test 연동, CI에서 Codecov 올리기
gcov로 C++ 코드 커버리지를 측정하고 lcov로 HTML 리포트를 만든 뒤 Google Test와 CMake 빌드에 연동하는 과정을 다룹니다. 라인·브랜치·함수·조건·경로 커버리지가 각각 무엇을 보여 주는지와 CI에서 Codecov로 결과를 올리는 흐름도 설명합니다.
-
C++ 성능 측정: chrono와 Google Benchmark로 신뢰할 수 있는 벤치마크 만들기
std::chrono 고해상도 시계로 C++ 코드를 측정할 때 워밍업, 반복 실행, 통계 수집을 어떻게 구성하는지 설명하고, Google Benchmark의 DoNotOptimize와 사용자 정의 카운터로 정렬·컨테이너·해시 함수를 비교하는 방법을 다룹니다.