테스트 주도 개발인 TDD에 관심이 생겼다. 기존에 typescript를 사용하였지만 함수의 검증이 필요하여 테스트를 도입하고자 공부해보자.
config
파일 없이 사용가능하다.xx.test.js
또는 xx.test.ts
로 끝나는 파일은 모두 테스트 파일로 간주하여 npm test
시 테스트를 시작한다jest는 아래와같은 문법으로 테스트를 진행하며 toXXXX
부분을 Matcher라고 부른다.
test("테스트 설명", ()=>{
expect("검증 대상").toXXXX("검증 결과")
})
test("빈배열인가?", () => {
const arr = [1,2,3,4,5];
expect(arr).not.toHaveLength(0) // 이러면 빈배열인지 검증이 되겠군
})
test("throw when id is non negative", () => {
expect(() => getUser(-1)).toThrow();
expect(() => getUser(-1)).toThrow("Invalid ID");
});