Jest · 🃏 Delightful JavaScript Testing (jestjs.io)
Jest는 JavaScript 테스트 프레임워크로, 내가 작성한 코드가 작동을 제대로 하는지를 검증하는 방법이다. Babel, TypeScript, Node, React, Angular, Vue 등에서 다양하게 사용할 수 있다.
JEST 시작하기
npm, Yarn, pnpm(기존 npm의 단점을 보완하기 위해 탄생한 패키지 매니저)으로 설치가 가능하다.
// npm
npm install --save-dev jest
// yarn
yarn add --dev jest
// pnpm
pnpm add --save-dev jest
npm 기준 설치방법
(1) npm init을 통해서 패키지를 생성한다. (-y : 설정값을 default값으로 설정)
(2) npm install jest --save-dev 를 통해 jest를 설치한다. (--save-dev: 해당 모듈이 개발단계에서만 사용)
(3) package.json에 들어가 scripts의 test를 "jest"로 변경한다.
JEST 사용하기
1. 테스트 파일 생성
(1) 테스트 함수를 작성한다. module.exports = 테스트할함수명; 으로 함수를 모듈화 시켜 내보낸다.
//sum.js
function sum(a, b){
return a+b;
}
module.exports = sum;
(2) Jest는 .test, .spec이 포함되어있는 파일이나 __tests__ 폴더에 작성되어있는 .js, .jsx, .ts, .tsx 파일을 감지하여 테스트를 시행한다.
- 테스트할함수파일명.test.js
- 테스트할함수파일명.spec.js
- __tests__폴더 안에 파일 생성
(3) const 테스트할함수명 = require("파일위치"); 를 통해 함수를 불러온다.
//sum.test.js
const sum = require("../sum");
(4) 테스트 할 내용을 작성한다.
- describe : 해당 테스트를 설명하는 주 함수, 관련된 테스트들을 그룹화한다.
- test (또는 it) : 실질적인 테스트를 수행하는 함수
- expect : 예상하는 바에 대해서 정의하는 함수, matcher를 사용하여 실제 결과와 비교한다.
//sum.test.js
const sum = require("../sum");
describe("sum 함수에 대한 테스트", () => {
test("3더하기 2는 5다.", () => {
expect(sum(3,2)).toBe(5);
});
test("2더하기 9는 10이 아니다.", () => {
expect(sum(2,9)).not.toBe(10);
})
})
2. 테스트 시행
npm test
테스트를 시행하면 해당 내용에 대한 결과가 아래와 같이 나온다.
만약 테스트가 통과되지 않았다면 어디에서 통과되지 않았는지 확인할 수 있다.
'Testing > Jest' 카테고리의 다른 글
Jest: Only와 Skip 사용해보기 (0) | 2024.09.18 |
---|---|
Jest : Matcher에 대해서 (1) | 2024.09.18 |
Jest: Mock Function에 대해서 (0) | 2024.09.11 |
Jest : 테스트 전 후 작업 설정하기 (0) | 2024.09.11 |
Jest: 비동기 코드 테스트하기 (0) | 2024.09.11 |