포시코딩

1월30일 - 통합 테스트(Integration Test) - 작성중 본문

TIL

1월30일 - 통합 테스트(Integration Test) - 작성중

포시 2023. 1. 30. 15:35
728x90

개요

통합 테스트 코드를 작성하면서 정리하면 좋을 내용들을 포스팅해봄

 

특정 함수들에 대한 함수 모킹 (jest.fn())

const redisClient = require('../../src/utils/redis.util');

beforeAll(async () => {
  // ...생략
  redisClient.set = jest.fn(() => {});
  redisClient.expire = jest.fn(() => {});
});

회원가입 - 로그인에 대한 통합 테스트 과정중

로그인 시에 발생되는 redis에 refresh token 저장하는 함수가 실행되어

redis에 수많은 데이터가 쌓이는 것을 발견했다.

 

그 과정 때문인지 에러도 같이 발생하여 발견하게 되었는데

위와 같이 beforeAll - 실행되기 전에 한번 redis 관련 함수인 

redisClient.set과 redisClient.expire 함수를 모킹 시켜 아무것도 실행하지 않은 함수로 만드는 방법으로 해결했다.

 

728x90