Firebase Summit에서 발표된 모든 내용을 살펴보고 Firebase로 앱을 빠르게 개발하고 안심하고 앱을 실행하는 방법을 알아보세요. 자세히 알아보기

Firebase 로컬 에뮬레이터 제품군 소개

Firebase 로컬 에뮬레이터 제품군은 Cloud Firestore, 실시간 데이터베이스, Firebase용 Cloud Storage, 인증, Firebase 호스팅, Cloud Functions(베타), Pub/Sub(베타), 및 Firebase Extensions(베타). 빠른 실행 및 프로토타이핑을 지원하는 풍부한 사용자 인터페이스를 제공합니다.

Local Emulator Suite를 사용한 로컬 개발은 평가, 프로토타이핑, 개발 및 지속적인 통합 워크플로에 적합할 수 있습니다.

개발 워크플로에 Firebase 로컬 에뮬레이터 제품군 추가

시작하기 전에

Firebase 로컬 에뮬레이터 제품군을 탐색하기 전에 Firebase 제품 및 Firebase 개발 모델에 대해 알아보는 것이 좋습니다.

  • 플랫폼 및 제품( Apple , Android 또는 Web )에 대한 Firebase 시작하기 주제를 읽어보세요.
  • 선택한 플랫폼에서 바로 실행할 수 있는 빠른 시작 앱을 다운로드한 다음 코드를 읽고 실행하십시오. FriendlyEats 빠른 시작 앱은 좋은 선택입니다( iOS , Android 또는 ).

Firebase 로컬 에뮬레이터 제품군이란 무엇입니까?

Firebase 로컬 에뮬레이터 제품군은 Firebase 서비스의 동작을 정확하게 모방하도록 구축된 개별 서비스 에뮬레이터로 구성됩니다. 즉, 앱을 이러한 에뮬레이터에 직접 연결하여 프로덕션 데이터를 건드리지 않고 통합 테스트 또는 QA를 수행할 수 있습니다.

예를 들어 앱을 Cloud Firestore 에뮬레이터에 연결하여 테스트에서 문서를 안전하게 읽고 쓸 수 있습니다. 이러한 쓰기는 Cloud Functions 에뮬레이터에서 기능을 트리거할 수 있습니다. 그러나 에뮬레이터를 사용할 수 없거나 구성되지 않은 경우에도 앱은 계속해서 프로덕션 Firebase 서비스와 통신합니다.

로컬 워크플로의 에뮬레이터 제품군

프로토타입 및 테스트 워크플로는 여러 가지 방법으로 로컬 에뮬레이터 제품군을 사용할 수 있습니다.

  • 단위 테스트 : Firebase Test SDK를 사용하여 mocha 테스트 러너를 사용하여 Node.js에서 단위 테스트를 작성할 수 있습니다. Test SDK는 보안 규칙을 로드하고, 테스트 간에 로컬 데이터베이스를 플러시하고, 에뮬레이터와의 동기 상호 작용을 관리하기 위한 몇 가지 편리한 방법을 제공합니다. 앱의 논리에 의존하지 않는 데이터베이스 상호 작용에 대한 간단한 테스트를 작성하는 데 좋습니다.
  • 통합 테스트 : 에뮬레이터 제품군의 각 개별 제품 에뮬레이터는 프로덕션 Firebase 서비스와 마찬가지로 SDK 및 REST API 호출에 응답합니다. 따라서 자체 테스트 도구를 사용하여 로컬 에뮬레이터 제품군을 백엔드로 사용하는 독립적인 통합 테스트를 작성할 수 있습니다.
  • 수동 테스트 : 프로덕션 데이터를 위험에 빠뜨리거나 테스트 프로젝트를 구성하지 않고도 실행 중인 애플리케이션을 로컬 에뮬레이터 제품군에 연결하여 Firebase 앱을 수동으로 테스트할 수 있습니다.
  • 제품 평가 : 결제 비용을 최소화하면서 안전한 로컬 환경에서 Firebase Extensions를 설치 및 관리하고 기능을 더 잘 이해할 수 있습니다.

어떤 Firebase 기능과 플랫폼이 지원되나요?

Firebase 로컬 에뮬레이터 제품군을 사용하면 상호 운용 가능한 방식으로 핵심 제품으로 코드를 테스트할 수 있습니다. Cloud Functions 에뮬레이터는 HTTP 함수, ​​호출 가능한 함수, Cloud Firestore, 실시간 데이터베이스, Firebase용 Cloud Storage, 인증, Pub/Sub에 의해 트리거되는 백그라운드 함수를 지원합니다. Cloud Firestore, 실시간 데이터베이스, Firebase용 Cloud Storage 에뮬레이터에는 Firebase 보안 규칙 에뮬레이션이 내장되어 있습니다.

구름
소방서
실시간
데이터 베이스
구름
저장
Firebase용
입증 구름
기능
구름
게시/구독
확장
안드로이드 SDK 해당 사항 없음 해당 사항 없음
iOS SDK 해당 사항 없음 해당 사항 없음
웹 SDK 해당 사항 없음 해당 사항 없음
Node.js 관리 SDK 해당 사항 없음 해당 사항 없음

다음 단계

  • 데이터베이스 및 Cloud Functions의 오프라인 프로토타이핑을 수행하는 방법을 보여주는 로컬 에뮬레이터 제품군 둘러보기를 시작 하세요.

  • Local Emulator Suite 설치 및 구성 방법을 알아보세요.

프로토타이핑 및 테스트를 위한 기타 도구

Emulator Suite는 다른 프로토타입 및 테스트 도구로 보완됩니다.

Cloud Functions 테스트 도구. Firebase CLI 환경은 기능을 프로토타이핑하고 테스트하는 여러 가지 방법을 제공합니다.

  • 에뮬레이터 제품군의 일부인 Cloud Functions 에뮬레이터입니다. 이 에뮬레이터는 Firestore 에뮬레이터 및/또는 실시간 데이터베이스 에뮬레이터의 로컬, 라이브 데이터 및 보안 규칙과 상호 운용 가능합니다.
  • 대화형 반복 함수 프로토타이핑 및 개발을 허용하는 Cloud Functions 셸입니다. 셸은 개발을 위해 REPL 스타일 인터페이스가 있는 Cloud Functions 에뮬레이터를 사용합니다. Cloud Firestore 또는 실시간 데이터베이스 에뮬레이터와의 통합은 제공되지 않습니다. 셸을 사용하여 데이터를 모의하고 함수 호출을 수행하여 로컬 에뮬레이터 제품군이 현재 지원하지 않는 제품(분석, 원격 구성 및 Crashlytics)과의 상호 작용을 시뮬레이션합니다.
  • 함수 개발을 위한 mocha 프레임워크가 포함된 Node.js인 Cloud Functions용 ​​Firebase 테스트 SDK입니다. 실제로 Cloud Functions Test SDK는 Cloud Functions 셸에서 자동화를 제공합니다.

Cloud Functions 셸 및 Cloud Functions Test SDK에 대한 자세한 내용은 대화형 기능 테스트 및 Cloud Functions 단위 테스트 에서 확인할 수 있습니다.

보안 규칙 테스트 도구. Emulator Suite는 보안 규칙 테스트에 선호되는 도구 세트입니다. 그러나 다음을 사용할 수도 있습니다.

  • Firebase 콘솔의 일부인 Rules Playground. Rules Playground는 보안 규칙 설계에 대한 훌륭한 대화형 시작하기 환경을 제공합니다. 자세한 내용은 Firebase 보안 규칙의 빠른 유효성 검사 를 참조하세요.