축구팀 관리 프로젝트 19일차 - jest로 dummy data 생성 중, 사용법
jest로 코드 테스트 및 더미 데이터를 만드는 로직을 작성 중입니다. 제목이 만드는 중이라는 건 아직 다 못 만들었다는 뜻입니다. 기록을 빠르게 마무리하고 다시 못다한 로직은 마무리할 계획입니다. jest의 기본개념과 간단하게 dummy data 만드는 법에 대해 소개하겠습니다.
jest란
Jest는 Facebook에서 개발하고 유지 관리하는 JavaScript 테스트 프레임워크입니다. React, Angular, Vue와 같은 다양한 JavaScript 라이브러리 및 프레임워크와 함께 사용됩니다. Jest는 크게 세 가지 주요 특징이 있습니다:
- 속도와 성능: Jest는 병렬 테스트 실행을 통해 빠른 테스트 수행이 가능합니다.
- 사용의 용이성: 설정이 거의 필요 없는 간단한 구성과 사용자 친화적인 오류 메시지를 제공합니다.
- 리치한 기능: 스냅샷 테스팅, 테스트 커버리지 등의 고급 기능을 내장하고 있습니다.
Jest로 dummy data 만드는 법
Jest로 테스트를 작성할 때, 가짜 데이터(Dummy Data)를 생성하여 테스트의 신뢰성을 높일 수 있습니다. 여기서는 간단한 예제를 통해 Jest를 사용하여 Dummy Data를 만드는 방법을 살펴보겠습니다.
Jest 테스트 파일에서 랜덤 사용자 Dummy Data 생성하기
// user.test.js
describe('User 랜덤 데이터 테스트', () => {
// 랜덤 사용자 생성 함수
const createRandomUser = () => {
const id = Math.floor(Math.random() * 1000);
const name = `User${id}`;
const email = `user${id}@example.com`;
return { id, name, email };
};
// 랜덤 사용자 리스트 생성
const dummyUsers = Array.from({ length: 5 }, () => createRandomUser());
// 테스트 케이스
test('랜덤 사용자 리스트가 5명인지 확인', () => {
expect(dummyUsers.length).toBe(5);
});
test('랜덤 사용자의 이메일 형식 확인', () => {
dummyUsers.forEach(user => {
expect(user.email).toMatch(/user\d+@example\.com/);
});
});
});
이 코드에서 createRandomUser 함수는 랜덤한 ID, 이름, 이메일을 가진 사용자 객체를 생성합니다. Jest 테스트 내에서 이 함수를 사용하여 랜덤 사용자 리스트 dummyUsers를 생성합니다. 이 리스트는 테스트 케이스에서 사용되며, 첫 번째 테스트에서는 리스트의 길이가 5인지 확인하고, 두 번째 테스트에서는 사용자들의 이메일 형식이 올바른지 검증합니다.
이러한 방식으로 Jest 테스트에서 랜덤 데이터를 생성하고 활용함으로써, 다양한 시나리오에서의 코드 동작을 검증할 수 있습니다. 이는 테스트의 다양성과 포괄성을 높이는 데 도움이 됩니다.
▼ 이전 진행한 프로젝트들 ▼
'내일배움캠프 > 축구팀 관리 프로젝트' 카테고리의 다른 글
축구팀 관리 프로젝트 21일차 - 추천 알고리즘? 백엔드로 가기 위해선 (0) | 2024.02.02 |
---|---|
축구팀 관리 프로젝트 20일차 - dataSource.query 사용, 부하테스트 (1) | 2024.02.01 |
축구팀 관리 프로젝트 18일차 - RDS 다시 공부, Storage Auto Scaling (1) | 2024.01.30 |
축구팀 관리프로젝트 17일차 - 전술 화면 조회 및 저장 개발 중 (1) | 2024.01.29 |
축구팀 관리 프로젝트 16일차 - 대용량 트래픽을 처리하는 두가지 방법 (1) | 2024.01.28 |