Release v2.0.0 · vitest-dev/vitest
GitHub
Vitest는 Vite기반의 빠른 속도와 간단한 설정으로 주목 받고 있는 차세대 테스트 프레임워크입니다. 최근 메이저 버전인 2.0 버전으로 업데이트 되었는데요. 주요 변경사항은 다음과 같습니다.
기본 풀이 'Threads'에서 'Forks'로 변경: 풀(Pool)이란 여러 테스트를 동시에 실행하기 위한 환경을 말합니다. 기존 프로세스 내에서 여러 스레드를 사용하여 테스트했던 'threads'에서 여러 개의 독립적인 프로세스를 생성하여 테스트하는 'forks'로 변경되었는데요. 따라서 일부 라이브러리 환경에서 스레드 사용시 문제가 되었던 부분을 개선하고 각 테스트가 독립적인 프로세스에서 실행되어 서로 영향을 주지않아 안정성이 개선되었습니다.
JSON리포터에서 위치와 스냅샷 필드 수정: JSON리포터란 테스트 결과를 JSON으로 출력하는 도구인데요. 테스트 위치와 스냅샷 정보 개선으로 테스트 결과를 분석할때 더 유용해졌습니다. CI/CD와 통합이 강화되어 테스트 실패시 원인 분석을 더 수월하게 할 수 있다고 합니다.
브라우저 모드 개선: 이전 버전에서는 각 테스트 실행 시 페이지를 새로고침 해야 했지만, 리로드 없이 테스트가 실행되어 속도가 더 빨라졌습니다. 이 외에도 뷰포트 변경, 마우스 상호작용 등의 기능이 추가되어 복잡하고 현실적인 사용자 시나리오 테스트가 가능해졌습니다.
모의 함수의 제네릭 타입이 간소화: Jest와의 호환성을 향상을 위해 mock function 제네릭 타입이 간소화되었습니다. 복잡한 제네릭 타입으로 인한 타입 오류가 감소하고, Jest와 흡사해서 마이그레이션 과정이 더 쉬워졌습니다.
Suite Hooks의 스택 기반 실행: 테스트 그룹화 함수(beforeAll, afterAll)가 이제 스택에서 실행됩니다. 스택은 LIFO 기반으로 테스트 실행 예측 가능성이 향상되고, 디버깅이 더 용이해졌습니다.
coverage.ignoreEmptyLines 기본 활성화: 빈 줄, 혹은 주석이 코드 커버리지 계산에서 제외됨으로써, 더 정확한 테스트커버리지 측정이 가능해졌습니다.
이 외에도, UI 개선으로 테스트 트리 구조로 렌더링 , 헤드리스 모드로 테스트 병렬 실행로 성능 개선, 에러 메시지와 스택트레이스가 더 명확하게표시 등의 많은 업데이트가 있는데요. 이번 업데이트로 인해, 단순히 빠르고 설정이 간편한 프레임워크를 넘어서서 개발 생산성과 코드 품질을 높일수 있는 테스트 프레임워크로 자리매김 한것 같습니다. 자세한 내용은 공식 홈페이지를 참조하세요.
https://github.com/vitest-dev/vitest/releases/tag/v2.0.0?ck_subscriber_id=2218242212
다음 내용이 궁금하다면?
이미 회원이신가요?
2024년 8월 8일 오전 12:56