JavaScript Test Case 만들기 시작(Jest)
안녕하세요. 알렉스 입니다. 이번에는 JavaScript의 코드를 구동하는데 수동으로 테스트 하는 것을 자동으로 테스트 할수 있도록 알려드리겠습니다. 여기서 사용하는 프레임워크는 Facebook사에서 개발한 Jest입니다.
npm 환경에서 Jest를 'package.json'에 추가를 해야 합니다.
npm환경에서 jest를 추가하기
cli : npm install --save-dev jest
이제 2개의 폴더를 만듭니다. 각각 code, test폴더를 만들어서 code에는 실행할 javascript코드를, test는 code에 있는 javascript코드를 테스트할 코드를 저장합니다.
먼저 code안에 'print.js'파일을 생성하고 아래와 같이 코드를 작성합니다.
// 받은 인자를 간단하게 return하는 값
function print(str) {
return str;
}
module.exports = print; // print를 외부로 나가게 한다.
이제 해당 'print.js'파일을 검사할 'print.test.js'파일을 test폴더에 생성하고 아래와 같이 코드를 작성해 줍니다.
const print = require('../code/print'); // 테스트 코드를 받아온다
// Jest을 이용한 테스트 케이스 생성
test('Hello World Test', () => {
// Hello World를 문자열 변수 str에 저장한다.
const str = "Hello World!";
// expect와 toBe가 동일한지 검사한다.
expect(print(str)).toBe(str);
});
이제 test cli를 실행하기 위해 'package.json'에서 아래와 같은 'script'를 추가해 줍니다.
"scripts": {
"test": "jest"
},
Jest테스트 실행
cli : npm run test
만약 아래 코드와 같이 둘다 같지 않는다면 에러를 표시해 줍니다.
const print = require('../code/print'); // 테스트 코드를 받아온다
// Jest을 이용한 테스트 케이스 생성
test('Hello World Test', () => {
// Hello World를 문자열 변수 str에 저장한다.
const str = "Hello World!";
// expect와 toBe가 동일한지 검사한다.
expect(print(str)).toBe("Hello"); // toBe에 일치하지 않는 값을 입력
});
댓글
댓글 쓰기