-
[Node.js] JestJavaScript/NodeJS 2020. 10. 18. 18:06728x90
Jest
- JS Test Framework
- Test Runner, Test Matcher, Test Mock 모두 제공
사용법
- npm install
2. package.json에 명령어 추가
// package.json { ... "scripts": { "test": "jest" } "jest": { "transform": { ".(ts|tsx)": "<rootDir>/node_modules/ts-jest/preprocessor.js" }, "testRegex": "(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$", "moduleFileExtensions": ["ts", "tsx", "js"] } ... }
- Matchers
// src/util/operator.ts const operator = { sum(a: number, b: number): number { return a + b; } } export default operator;
// test/operator.spec.ts import operator from '../src/util/operator'; describe('Test', () => { // toBe test case test('toBe Example', () => { expect(operator.sum(1, 2)).toBe(3); expect(operator.sum(3, 2)).toBe(5); expect(operator.sum(5, 200)).toBe(205); }) // not test case test('toBe Example', () => { expect(operator.sum(1, 2)).toBe(3); expect(operator.sum(3, 2)).not.toBe(0); expect(operator.sum(5, 200)).toBe(205); }) // toEqual test case test('toEqual Example', () => { const data = { field1: 1, field2: 2 }; expect(data).toEqual({ field1: 1, field2: 2 }); }) })
- toBeNull : null 값을 매칭
- toBeUndefined : undefined 값을 매칭
- toBeDefined : undefined 가 아닐 때 매칭
- toBeTruthy : true statement일 때 매칭
- toBeFalsy : false statement일 때 매칭
Numbers
- toBeGreaterThan : 초과
- toBeGreaterThanOrEqual : 이상
- toBeLessThan : 미만
- toBeLessThanOrEqual : 이하
Strings
- toMatch : string 비교(정규식 사용 가능)
Arrays and iterables
- toContain : 배열 요소에 포함 여부 확인
728x90'JavaScript > NodeJS' 카테고리의 다른 글
[NodeJS] 콘솔 입력 받는 방법 (0) 2021.01.16 [NestJS] NestJS CORS Setting (0) 2020.09.13 [Node.js] Passport.js - 로그인 인증 및 세션 (Typescript) (0) 2020.08.22 [Node.js] pm2란? (0) 2020.08.17 [Node.js] Node projects with --lib es6: cannot find name 'console' (0) 2020.08.16