Jest의 it와 test의 차이점은 무엇입니까?
을 사용하다의 1개는 「」를 사용하고 .it
다른 한쪽은test
둘 다 매우 비슷하게 작동하는 것 같습니다.들의의 ?? ?? ?? ??? ??
describe('updateAll', () => {
it('no force', () => {
return updateAll(TableName, ["fileName"], {compandId: "test"})
.then(updatedItems => {
let undefinedCount = 0;
for (let item of updatedItems) {
undefinedCount += item === undefined ? 1 : 0;
}
// console.log("result", result);
expect(undefinedCount).toBe(updatedItems.length);
})
});
test('force update', () => {
return updateAll(TableName, ["fileName"], {compandId: "test"}, true)
.then(updatedItems => {
let undefinedCount = 0;
for (let item of updatedItems) {
undefinedCount += item === undefined ? 1 : 0;
}
// console.log("result", result);
expect(undefinedCount).toBe(0);
})
});
});
것 test
Jest의 공식 API에 있지만it
렇지않않 않않않다다
Jese docs 상태는 의 에일리어스입니다.따라서 기능적인 관점에서는 완전히 동일합니다.둘 다 당신의 시험에서 읽을 수 있는 영어 문장을 만들 수 있도록 하기 위해 존재합니다.
같은 작업을 하지만 이름이 다르며 테스트 이름과 상호 작용합니다.
test
작성 내용:
describe('yourModule', () => {
test('if it does this thing', () => {});
test('if it does the other thing', () => {});
});
장애가 발생했을 때 얻을 수 있는 정보:
yourModule > if it does this thing
it
작성 내용:
describe('yourModule', () => {
it('should do this thing', () => {});
it('should do the other thing', () => {});
});
장애가 발생했을 때 얻을 수 있는 정보:
yourModule > should do this thing
즉, 가독성에 관한 것이지 기능에 관한 것은 아닙니다.
제제 in in in in in init
본인이 직접 작성하지 않은 불합격 테스트의 결과를 읽는 것은 정말 일리가 있다.그것은 시험에 대한 내용을 더 빨리 이해하는 데 도움이 된다.
는 또한 "Developer"를 줄이기도 합니다.Should do this thing
로로 합니다.Does this thing
으로도 들어맞습니다.it
표기법
다른 답변들이 명확히 밝혔듯이, 그들은 같은 일을 합니다.
이 두 가지 방법은 1) 다음과 같은 "RSPEC" 스타일의 테스트를 수행할 수 있습니다.
const myBeverage = {
delicious: true,
sour: false,
};
describe('my beverage', () => {
it('is delicious', () => {
expect(myBeverage.delicious).toBeTruthy();
});
it('is not sour', () => {
expect(myBeverage.sour).toBeFalsy();
});
});
또는 2) 다음과 같은 "xUnit" 스타일의 테스트:
function sum(a, b) {
return a + b;
}
test('sum adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
문서:
- https://jestjs.io/docs/en/api.html#describename-fn
- https://jestjs.io/docs/en/api.html#testname-fn-timeout
농담 문서에 나와 있듯이, 그것들은 같다: 그것은 별칭이다.
test(이름, fn, 타임아웃)
에일리어스 it(name, fn, timeout)에도 표시됩니다.
★★★★★★★★★★★★★★★★★.describe
는 테스트를 그룹으로 편성하고 싶은 경우에 한합니다.설명
descript(이름, fn)
describe(name, fn)
는 관련된 여러 테스트를 그룹화하는 블록을 만듭니다.예를 들어 맛있어야 하지만 신지 않아야 하는 myBeverage 개체가 있는 경우 다음을 사용하여 테스트할 수 있습니다.
const myBeverage = {
delicious: true,
sour: false,
};
describe('my beverage', () => {
test('is delicious', () => {
expect(myBeverage.delicious).toBeTruthy();
});
test('is not sour', () => {
expect(myBeverage.sour).toBeFalsy();
});
});
이것은 필수가 아닙니다.테스트 블록은 최상위 레벨에서 직접 작성할 수 있습니다.하지만 시험을 그룹으로 편성하는 것을 선호한다면 이것은 편리할 수 있다.
요.it()
xit()
으로 it()
★★★★★★★★★★★★★★★★★」xit()
.test()
★★★★★★★★★★★★★★★★★」xit()
.
다음은 이 문서에서 발췌한 것입니다.link
test(name, fn, timeout)
에일리어스에도 기재되어 있습니다.
it(name, fn, timeout)
테스트 파일에 필요한 것은 테스트를 실행하는 테스트 방법뿐입니다.예를 들어, 다음과 같은 함수가 있다고 가정해 봅시다.
inchesOfRain()
0이어야 합니다.전체 테스트는 다음과 같습니다.
Jeest는 왜 그들이 정확히 같은 기능을 위해 두 가지 버전을 가지고 있는지에 대해 언급하지 않았습니다.
내 생각엔, 그건 단지 관례일 뿐이야. test
유닛 테스트용입니다.it
연동 테스트용입니다.
그것들은 같은 것이다.프로그래밍 언어로 TypeScript를 사용하고 있는데 /@types/jest/index.d.ts의 Jest 패키지 소스 코드에서 정의 파일을 보면 다음과 같은 코드가 나타납니다.
물론, '시험'에는 많은 다른 이름들이 있고, 당신은 그것들 중 어떤 것도 사용할 수 있습니다.
declare var beforeAll: jest.Lifecycle;
declare var beforeEach: jest.Lifecycle;
declare var afterAll: jest.Lifecycle;
declare var afterEach: jest.Lifecycle;
declare var describe: jest.Describe;
declare var fdescribe: jest.Describe;
declare var xdescribe: jest.Describe;
declare var it: jest.It;
declare var fit: jest.It;
declare var xit: jest.It;
declare var test: jest.It;
declare var xtest: jest.It;
언급URL : https://stackoverflow.com/questions/45778192/what-is-the-difference-between-it-and-test-in-jest
'programing' 카테고리의 다른 글
Composer를 자체 업데이트할 수 없습니다. (0) | 2022.09.17 |
---|---|
상대 경로에서 모듈 가져오기 (0) | 2022.09.17 |
Jasmine JavaScript 테스트 - 목표와 목표의 비교 (0) | 2022.09.17 |
npm install --legacy-peer-deps는 정확히 무엇을 합니까?언제가 권장됩니까? / 어떤 사용 사례가 있을 수 있습니까? (0) | 2022.09.17 |
JavaScript에서 연산자의 인스턴스는 무엇입니까? (0) | 2022.09.17 |