728x90
알고 있고, 배우고 있는 jest의 matcher들을 정리하는 포스팅으로 제가 더 많이 알아가면 알아갈수록 추가될 예정입니다~ ^0^
matcher란 jest에서 제공하는 테스트 결과값을 확인하는 함수.
하단에 존재하는 matcher list.
ctrl + f로 찾는것을 권장합니다.
- toBe
- not.toBe
- toEqual
- toStrictEqual
- toBeNull
- toBeFalsy
- toBeTruthy
toBe
test('toBe 사용법', () => {
expect(결과값).toBe(기대값);
});
// 테스트 통과 사례
test('1 = 1이다', () => {
expect(1).toBe(1);
});
기대값과 결과값의 일치 여부 확인 - 일치 해야 테스트 통과
not.toBe
test('not toBe 사용법', () => {
expect(결과값).not.toBe(기대값);
});
// 테스트 통과 사례
test('1+1은 1이 아니다', () => {
expect(1+1).not.toBe(1);
});
기대값과 결과값의 일치 여부 확인 - 불일치 해야 테스트 통과
toEqual
test('toEqual 사용법', () => {
expect(결과값).toEqual(기대값);
});
/**
* fn.user = (name, age) => ({name, age});
*/
// 테스트 통과 사례
test('두 user object가 서로 일치한다', () => {
expect(fn.user('김철수', 10)).toEqual({
name: '김철수',
age: 10
});
});
기대값과 결과값의 일치 여부 확인 - 단순 값만 일치하면 통과 (toBe와의 차이점)
toStrictEqual
test('toStrictEqual 사용법', () => {
expect(결과값).toStrictEqual(기대값);
});
/**
* fn.user = (name, age, adress) => ({
* name, age, adress: undefined
* });
*/
// 테스트 통과 사례
test('두 user object가 일치한다.', () => {
expect(fn.user('김철수', 10, '서울시')).toStrictEqual({
name: '김철수',
age: 10,
adress: '서울시'
});
});
// 테스트 실패 사례 -> 요구하는 주소값이 없다.
test('두 user object가 일치하지 않는다.', () => {
expect(fn.user('김철수', 10)).toStrictEqual({
name: '김철수',
age: 10
});
});
기대값과 결과값의 일치 여부 확인 - 요구되는 모든 요소들을 충족해야 통과
toBe와 toEqual과 toStrictEqual의 차이점
toBeNull
test('toBeNull', () =>{
expect(결과값).toBeNull();
});
// 테스트 통과 사례
test('null = null이다.', () =>{
expect(null).toBeNull();
});
기대값과 결과값의 일치 여부 확인 - 결과값이 null이어야만 통과
toBeFalsy
test('toBeFalsy', () =>{
expect(결과값).toBeFalsy();
});
// 테스트 통과사례
test('toBeFalsy', () =>{
expect(0).toBeFalsy();
});
기대값과 결과값의 일치 여부 확인 - 결과값이 거짓이어야만 통과
toBeTruthy
test('toBeTruthy', () =>{
expect(결과값).toBeTruthy();
});
// 테스트 통과 사례
test('toBeTruthy', () =>{
expect(1).toBeTruthy();
});
기대값과 결과값의 일치 여부 확인 - 결과값이 진실이어야만 통과
728x90
'Let`s study hard : 지대넓얕 > TEST:Jest' 카테고리의 다른 글
[jest로 test하기] toBe vs toEqual vs toStrictEqual (0) | 2021.11.07 |
---|---|
[jest로 test하기] 간단 명료한 Jest의 기본사항 모음 (0) | 2021.11.06 |