Firescout 3.0 실내화재 감지 시스템 관리자 콘솔
실내 화재 감지 AI 시스템의 고객사, 카메라, AI Box, 사용자를 통합 관리하는 온프레미스 백오피스 웹 애플리케이션
이 프로젝트에서의 MSW 활용
개발 환경 API 모킹 및 독립적인 프론트엔드 개발 환경 구축
프로젝트 2개에서 사용했습니다. 각 프로젝트에서 어떤 역할로 썼는지 아래에 정리했습니다.
브라우저와 Node.js 환경에서 네트워크 요청을 가로채 모의 응답을 반환하는 API 모킹 라이브러리
MSW(Mock Service Worker)는 Service Worker API를 활용해 실제 네트워크 계층에서 HTTP 요청을 가로채고 모의 응답을 반환하는 라이브러리입니다. 백엔드 API가 준비되지 않았거나, 테스트 환경에서 외부 의존성을 제거하고 싶을 때 프론트엔드 코드 수정 없이 API 응답을 시뮬레이션할 수 있습니다. 개발 환경과 테스트 환경 모두에서 동일한 모킹 정의를 재사용할 수 있어 일관성 있는 개발 경험을 제공합니다.
GET /api/user와 POST /api/login 요청을 가로채서 미리 정의한 JSON 응답을 반환합니다. 실제 fetch나 axios 호출 코드는 전혀 수정하지 않아도 됩니다.
import { http, HttpResponse } from 'msw';
import { setupWorker } from 'msw/browser';
// 요청 핸들러 정의
const handlers = [
http.get('/api/user', () => {
return HttpResponse.json({
id: 1,
name: '홍길동',
email: 'hong@example.com'
});
}),
http.post('/api/login', async ({ request }) => {
const body = await request.json();
return HttpResponse.json({ token: 'mock-token-123' });
})
];
// 브라우저 환경에서 Service Worker 시작
const worker = setupWorker(...handlers);
worker.start();위 개요는 기술 학습을 돕기 위해 자동 생성된 일반 설명입니다. 정확한 사양과 최신 정보는 공식 문서를 확인하세요.
위 개념이 실제 프로젝트에서 어떻게 쓰였는지 보여줍니다.
실내 화재 감지 AI 시스템의 고객사, 카메라, AI Box, 사용자를 통합 관리하는 온프레미스 백오피스 웹 애플리케이션
이 프로젝트에서의 MSW 활용
개발 환경 API 모킹 및 독립적인 프론트엔드 개발 환경 구축
실시간 화재 감지 알림과 카메라 관리를 제공하는 온프레미스 화재 안전 모니터링 웹 애플리케이션
이 프로젝트에서의 MSW 활용
개발 환경 API 모킹 및 테스트
위 프로젝트들에서 같이 쓰인 다른 기술입니다.