...
only() / skip()
테스트 코드를 디버깅할 때 유용한 함수 이다.
테스트 파일 안에 테스트 함수들 중에서 하나만 실패했을 경우, 그 함수만 단독으로 실행해보고 싶을 때가 있을 것이다.
그럴 때는 해당 테스트 함수 뒤에 .only() 라고 붙여 주면 Jest Runner는 해당 테스트 파일을 실행할 때 .only() 가 붙은 함수만 실행해준다.
test.only("run only", () => {
// 이 테스트 함수만 실행됨
});
test("not run", () => {
// 실행 안됨
});
skip() 은 only() 와 반대로 작동한다고 보면 된다.
어떤 함수만 빼고 실행해보고 싶을 때, 해당 테스트 함수에 skip() 을 붙여주면 Jest Runner는 해당 함수를 제외하고 다른 테스트 함수들만 실행해 준다.
test.skip("skip", () => {
// 이 테스트 함수는 제외됨
});
test("run", () => {
// 실행됨
});
describe() / it()
테스트 파일에 많은 수의 테스트 함수가 작성되어 있는 경우,
연관된 테스트 함수들끼리 그룹화해놓으면 가독성이 좋아진다.
다음과 같이 Jest의 describe() 함수를 통해 여러 개의 테스트 함수를 묶는 것이 가능하다.
describe("group 1", () => {
test("test 1-1", () => {
// ...
});
test("test 1-2", () => {
// ...
});
});
describe("group 2", () => {
it("test 2-1", () => {
// ...
});
it("test 2-2", () => {
// ...
});
});
여기서 test() 함수 대신에 it() 함수를 사용했는데, 이 두 함수는 완전히 동일한 기능을 하는 함수다.
기존 많이 사용되었던 Mocha나 Jasmin 같은 테스트 라이브러리에서 함수명을 it()을 사용하였기 때문에, Jest에서도 it()을 test() 함수의 별칭으로 제공해주고 있는 것이다.
Reference
인용한 부분에 있어 만일 누락된 출처가 있다면 반드시 알려주시면 감사하겠습니다
이 글이 좋으셨다면 구독 & 좋아요
여러분의 구독과 좋아요는
저자에게 큰 힘이 됩니다.