home

Vitest

글 분류
sub
키워드
testing
svelte
생성일
2023/02/27 02:57
최근 수정일
2023/03/02 00:15
작성중

⚽️ 목표

svelte-kit으로 프로젝트 시작 시 자동으로 추천되는 Vitest의 장점이 뭔지 알아보자

Vitest

비교적 새로운 Vite native 유닛 테스팅 프레임워크
현재 Svelte는 특정 유닛 테스팅 프레임워크를 공개적으로 지지 하지 않음 → 2023년 2월 현재 svelte-kit으로 프로젝트 시작 시 추천해주는 유닛 테스팅 프레임 워크

필요성

많은 유닛 테스트 프레임워크가 CommonJS 모듈 방식으로 작성됨 → vite로 작성한 코드가 CommonJS 방식으로 변환될때 문제발생의 가능성이 존재

Jest가 있는데 왜?

Jest와 Vite 사이에 중복된 코드가 너무 많음, 이미 vite 프로젝트를 사용하면서 설정됐던 부분들을 또 다시 Jest 사용을 위해 다시 설정해줘야함
개발을 위한 설정과 테스팅을 위한 설정이 전혀 다르게 나뉨 → 그 잘난 속도 빠르고 편한 vite를 사용하지만 Jest 사용 시 babel을 사용해야할 수 도 있음
Jest를 사용하므로 babel과 jest.config.json 설정이 필수
안돌아가는걸 babel을 사용해 돌아가게 만드는 느낌적인 느낌
Vitest를 사용하면 프로젝트 기본 vite.config.js로 편하게 설정 가능

Svelte Testing Library

Vitest에 얹혀서 사용하는 컴포넌트 테스팅 라이브러리
위와 같은 이유로 Jest에 얹혀서도 사용 가능하나 복잡한 설정 필요 → ESM을 사용하는 Vite의 장점 활용 못하고 Jest를 돌리기 위해 다시 babel올리고…

참조