JEST 테스트결과를 HTML로 보여주자!

2023. 11. 2. 10:58· 우아한테크코스
목차
  1. 소개
  2. 설치 방법
  3. 결과
  4. 추가 자료

소개

이번 2주차에 우아한테크코스 프리코스를 진행하면서 추가된 요구사항이 있었습니다.

추가된 요구 사항

이 부분에서 Jest를 이용하여 본인이 정리한 기능 목록이 정상적으로 동작하는지를 테스트 코드로 확인하라고 쓰여져 있었습니다.

Jest를 간단하게 소개해보자면 Jest는 Facebook에서 만든 Javascript 테스트 라이브러리 입니다. React나 Vue,Node.js 등 다양한 환경에서 사용할 수 있습니다.

 주로 단위 테스트, 통합 테스트, 스냅샷 테스트 등 다양한 테스트 유형을 지원합니다.

또한 mocking,stubbing,spying을 위한 기능도 포함되어 있으며 , CLI를 통해 테스트를 실행하거나 결과를 확인할 수 있습니다

테스트 파일

위와 같이 테스트 결과가 vscode에서 보여집니다. 물론 좀더 세부내용을 보여지게 jest를 실행하는 package.json에서 --verbose를 추가하여 상세하게 보여질순 있지만 워낙 테스트 케이스들이 많으면 한눈에 보기 힘들 정도 입니다. 그래서 저는 이와 같은 불편함을 해결할 방법을 찾던 도중 jest-html-reporters 라는 라이브러리를 발견하였습니다.

jest-html-reporters 라이브러리는 테스트 결과를 HTML 형식으로 깔끔하게 보여줍니다.

 

설치 방법

npm install jest-html-reporters --save-dev

위의 명령어를 통해 jest-html-reporters 를 설치합니다.

이제 프로젝트의 루트폴더에 jest.config.cjs를 만들어 줍니다.
( CommonJS 스타일로 작성하였기 때문에 cjs확장자로 만들었습니다. js파일로 만들어도 무방합니다.)

module.exports = {
  reporters: [
    'default',
    [
      'jest-html-reporters',
      {
        publicPath: './html-report', // HTML 리포트를 저장할 디렉터리 폴더 입니다
        filename: 'report.html', // 생성될 HTML 파일의 이름입니다
        openReport: true, // 테스트 종료시 HTML을 열어서 결과를 보여줍니다.
        includeFailureMsg: true, // 실패한 테스트 케이스의 실패 메시지를 포함시킵니다.
        expand: true,  // 테스트 스위트(상세 보기)를 확장할지 여부를 설정합니다.
      },
    ],
  ],
};

 

 

+ 우아한테크코스 프리코스 에서는 package.json에서 scripts설정에 Jest 테스트 실행도구를 관리하고 있습니다. 

--config 옵션을 설정하여 Jest 설정 파일의 경로를 지정할 수 있습니다. 

{
  "scripts": {
    "test": "jest --config=jest.config.cjs --detectOpenHandles"
  },
}
npm test // npm test를 vscode 터미널에 입력하여 Jest 테스트를 실행시켜줍니다.

결과

jest-html-reporter 결과

위에 보시는 것 처럼 jest-html-reporters 라이브러리를 통해 Jest 테스트 결과를 시각적으로 향상시키면서 테스트 결과를 쉽게 공유할 수 있습니다.

 

추가 자료

 

[jest-html-reporter]

'우아한테크코스' 카테고리의 다른 글

우아한테크코스 6기 프리코스 4주차 마지막 회고  (1) 2023.11.16
우아한테크코스 6기 프리코스 3주차 회고  (3) 2023.11.09
우아한테크코스 6기 프리코스 2주차 회고  (0) 2023.11.02
우아한테크코스 6기 프리코스 1주차 회고  (0) 2023.10.23
  1. 소개
  2. 설치 방법
  3. 결과
  4. 추가 자료
'우아한테크코스' 카테고리의 다른 글
  • 우아한테크코스 6기 프리코스 4주차 마지막 회고
  • 우아한테크코스 6기 프리코스 3주차 회고
  • 우아한테크코스 6기 프리코스 2주차 회고
  • 우아한테크코스 6기 프리코스 1주차 회고
trophy98
trophy98
새내기 프론트엔드 개발자의 걸음마 때기
trophy98
TrophyJourney
trophy98
전체
오늘
어제
  • 분류 전체보기 (31)
    • Javascript (4)
    • React (3)
    • 회고록 (1)
    • JS 알고리즘 문제풀이 (5)
    • 자유게시판 (0)
    • 우아한테크코스 (5)
    • 코드잇 스프린트 (1)
    • HTML (1)
    • CSS (2)
    • GIT (2)
    • CS,NetWork (2)
    • Nextjs (2)
    • 프로젝트 (2)
    • 인프라 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 우아한테크코스 6기
  • javascript
  • 우테코 6기
  • 자바스크립트 자료구조
  • 스프린트프론트엔드4기
  • next.js
  • SSG
  • 금융프로젝트
  • 웹 어셈블리
  • 이미지 컴포넌트
  • 중복선언
  • 자바스크립트
  • 취업까지달린다
  • 코드잇스프린트
  • css
  • 자바스크립트 알고리즘
  • js 알고리즘
  • 코드잇 스프린트 4기
  • os 설정
  • SSR
  • 우아한테크코스
  • CSR
  • 프론트엔드
  • 프로그래머스
  • 우테코
  • GIT
  • 코드잇
  • React
  • keyprop
  • Image component

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.1
trophy98
JEST 테스트결과를 HTML로 보여주자!
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.