본문 바로가기

Test

Jest에서 toBe와 toEqual의 차이점

test('toBe는 obj가 같은 객체를 가리키고 있는지 확인한다', () => {

    const obj = {};

    expect(obj).toBe(obj); // true

});

 

test('객체의 내용이 같더라도 서로 다른 메모리에 있는 객체이기 때문에 toBe를 쓰면 false가 나온다.', () => {

    expect({ name: 'John' }).toBe({ name: 'John' }); // false

});

 

test('대신에 객체의 내용이 같은지를 확인하려면 toEqual을 써야 한다', () => {

    const obj = {};

    expect({ name: 'John' }).toEqual({ name: 'John' }); // true

});

 

참고 : https://jestjs.io/docs/en/using-matchers