일반적인 Jest 매처
8546 단어 testing
이러한 매처를 사용하여 기준이 우리가 기대하는 것과 일치하는지 확인할 수 있습니다.
previous article에서
toBeTruthy
및 toBeFalsy
를 사용했습니다.그러나 우리가 활용할 수 있는 많은 다른 것들이 있습니다. 이 기사에서는 일반적으로 사용되는 몇 가지를 살펴보겠습니다.
기본 매처
가장 간단한 형태로
toBe
매처를 사용하여 특정 값이 "되어야"한다고 가정할 수 있습니다.예를 들어:
test('two plus two is four', () => {
expect(2 + 2).toBe(4);
});
이것은 우리가 항상 결과가 4라고 예상하는 계산입니다.
문자열 조작을 결정하는 데에도 동일하게 사용할 수 있습니다.
test('uppercase is correct', () => {
expect('abc'.toUpperCase()).toBe('ABC');
});
객체가 특정 형식인지 확인하려는 경우도 종종 있습니다.
이를 위해
toEqual
검사를 사용할 수 있습니다.test('should modify a object', () => {
const data = { foo: 'bar' };
data['baz'] = 'fuu';
expect(data).toEqual({ foo: 'bar', baz: 'fuu' });
});
잘 사용되는 또 다른 방법은 특정 기준이 더 이상 충족되지 않는지 확인하는 것입니다.
때때로 우리는 정확한 결과를 알지 못하지만 그 결과가 구체적이기를 원하지는 않습니다.
0인 주사위가 있다고 가정해 봅시다.
test('roll the dice', () => {
let dice = 0;
expect(rollDice(dice)).not.toBe(0);
});
배열의 경우 특정 요소가 배열에 포함되어 있는지 확인하고 싶을 수 있습니다.
이를 위해
toContain
테스트를 사용할 수 있습니다.test('Dont forget the milk', () => {
const shoppingList = ['coffee', 'eggs', 'milk'];
expect(shoppingList).toContain('milk');
});
진실성을 판단하다
우리가 본 것처럼
true
또는 false
인 항목을 확인할 수 있지만 몇 가지 추가 truthiness
확인이 있습니다.toBeNull
: 출력이 정확하다면 null
toBeUndefined
: 출력이 정확하다면 undefined
toBeDefined
: undefined
를 제외한 모든 것toBeTruthy
: 사실로 간주되는 모든 것toBeFalsy
: 거짓으로 간주되는 모든 것이는 특정 어설션을 확인하고 특히 이러한 어설션 중 하나가 아닌지 확인하는 데 매우 유용할 수 있습니다.
숫자로 계산하기
지금까지 우리는
toBe
를 사용하여 특정 숫자를 일치시키는 것을 보았습니다.그러나 우리는 한 단계 더 나아가 숫자가 일치해야 하는 정도를 결정할 수도 있습니다.
toBeGreaterThan
: 특정 숫자보다 더 중요해야 함toBeGreaterThanOrEqual
: 특정 숫자보다 크거나 같음toBeLessThan
: 일정수 미만toBeLessThanOrEqual
: 특정 수보다 작거나 같음toBeCloseTo
: 부동 소수점이 특정 소수점에 가까워지는 경우문자열 정규식 일치
종종 우리는 특정 부분에 기반한 문자열만 일치시키길 원합니다.
나머지 값을 100% 알지 못할 수도 있기 때문입니다.
이를 위해
toMatch
를 사용할 수 있습니다. 정규 정규식을 매개변수로 사용합니다.test('Test for part of string', () => {
expect('Christian').toMatch(/Chris/);
});
반대로 이 문자열에 부분이 없는지 확인할 수 있습니다.
test('Make sure nothing went wrong', () => {
expect('Something went wrong, sorry').not.toMatch(/wrong/);
});
Note: The above will fail as we do have the word "wrong" in our test case
하지만 더 있습니다!
이것은 몇 가지 기본 작업이지만 사용할 수 있는 작업의 전체 목록은 아닙니다.
많은 것들이 요소가 화면에 표시되는지 확인하는 데 매우 유용하므로 나중에 살펴보겠습니다.
항상 사용하는 테스트는 무엇입니까?
읽어주셔서 감사합니다. 연결합시다!
제 블로그를 읽어주셔서 감사합니다. 내 이메일 뉴스레터를 구독하고 Facebook에 연결하거나
Reference
이 문제에 관하여(일반적인 Jest 매처), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/dailydevtips1/common-jest-matchers-3819텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)