Firebase Local Emulator Suite là một bộ công cụ nâng cao dành cho những nhà phát triển muốn tạo và kiểm thử ứng dụng cục bộ bằng Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication, Firebase Hosting, Cloud Functions (bản thử nghiệm), Pub/Sub (bản thử nghiệm) và Firebase Extensions (bản thử nghiệm). Nó cung cấp một giao diện người dùng phong phú để giúp bạn nhanh chóng chạy và tạo mẫu.
Phát triển cục bộ bằng Bộ công cụ mô phỏng trên thiết bị có thể phù hợp với quy trình đánh giá, tạo mẫu, phát triển và tích hợp liên tục của bạn.
Trước khi bắt đầu
Trước khi khám phá Bộ công cụ mô phỏng trên thiết bị của Firebase, bạn nên tìm hiểu về các sản phẩm của Firebase và mô hình phát triển của Firebase:
- Đọc các chủ đề Bắt đầu sử dụng Firebase cho nền tảng và sản phẩm của bạn (Apple, Android hoặc Web).
- Tải một ứng dụng khởi động nhanh đã sẵn sàng chạy xuống nền tảng bạn chọn, sau đó đọc và thực thi mã. Ứng dụng bắt đầu nhanh FriendlyEats là một lựa chọn phù hợp (iOS, Android hoặc Web).
Firebase Local Emulator Suite là gì?
Bộ công cụ mô phỏng trên thiết bị của Firebase bao gồm các trình mô phỏng dịch vụ riêng lẻ được xây dựng để mô phỏng chính xác hành vi của các dịch vụ Firebase. Điều này có nghĩa là bạn có thể kết nối ứng dụng của mình trực tiếp với các trình mô phỏng này để thực hiện kiểm thử tích hợp hoặc đảm bảo chất lượng mà không ảnh hưởng đến dữ liệu phát hành công khai.
Ví dụ: bạn có thể kết nối ứng dụng của mình với trình mô phỏng Cloud Firestore để đọc và ghi tài liệu một cách an toàn trong quá trình kiểm thử. Các thao tác ghi này có thể kích hoạt các hàm trong trình mô phỏng Cloud Functions. Tuy nhiên, ứng dụng của bạn vẫn sẽ tiếp tục giao tiếp với các dịch vụ Firebase chính thức khi không có trình mô phỏng hoặc khi trình mô phỏng chưa được định cấu hình.

Bộ công cụ mô phỏng trong quy trình làm việc trên thiết bị
Quy trình tạo mẫu và kiểm thử của bạn có thể sử dụng Local Emulator Suite theo nhiều cách:
- Kiểm thử đơn vị: bằng cách sử dụng Firebase Test SDK, bạn có thể viết các bài kiểm thử đơn vị trong Node.js bằng trình chạy kiểm thử mocha. Test SDK cung cấp một số phương thức thuận tiện để tải Quy tắc bảo mật, xoá cơ sở dữ liệu cục bộ giữa các kiểm thử và quản lý hoạt động tương tác đồng bộ với các trình mô phỏng. Đây là một lựa chọn phù hợp để viết các kiểm thử đơn giản cho hoạt động tương tác với cơ sở dữ liệu mà không phụ thuộc vào logic của ứng dụng.
- Kiểm thử tích hợp: mỗi trình mô phỏng sản phẩm riêng lẻ trong Bộ công cụ mô phỏng đều phản hồi các lệnh gọi SDK và REST API giống như các dịch vụ Firebase trong thực tế. Vì vậy, bạn có thể sử dụng các công cụ kiểm thử của riêng mình để viết các kiểm thử tích hợp độc lập sử dụng Local Emulator Suite làm phần phụ trợ.
- Kiểm thử thủ công: bạn có thể kết nối ứng dụng đang chạy với Local Emulator Suite để kiểm thử ứng dụng Firebase theo cách thủ công mà không gặp rủi ro về dữ liệu sản xuất hoặc định cấu hình dự án kiểm thử.
- Đánh giá sản phẩm: bạn có thể cài đặt và quản lý Firebase Extensions trong một môi trường cục bộ an toàn và hiểu rõ hơn về các chức năng của sản phẩm trong khi giảm thiểu chi phí thanh toán.
Những tính năng và nền tảng nào của Firebase được hỗ trợ?
Bộ công cụ mô phỏng cục bộ của Firebase cho phép bạn kiểm thử mã bằng các sản phẩm cốt lõi của chúng tôi theo cách có thể tương tác. Trình mô phỏng Cloud Functions hỗ trợ các hàm HTTP, hàm có thể gọi và hàm nền do Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication và Pub/Sub kích hoạt. Các trình mô phỏng Cloud Firestore, Realtime Database và Cloud Storage for Firebase có sẵn tính năng mô phỏng Firebase Security Rules.
| Cloud Firestore |
Cơ sở dữ liệu theo thời gian thực |
Cloud Storage cho Firebase |
Xác thực | Cloud Functions |
Cloud Pub/Sub |
Tiện ích | |
|---|---|---|---|---|---|---|---|
| SDK Android | Không áp dụng | Không áp dụng | |||||
| SDK iOS | Không áp dụng | Không áp dụng | |||||
| Web SDK | Không áp dụng | Không áp dụng | |||||
| SDK quản trị Node.js | Không áp dụng | Không áp dụng |
Các bước tiếp theo
Bắt đầu bằng hướng dẫn Local Emulator Suite cho biết cách bạn có thể tạo mẫu ngoại tuyến cho cơ sở dữ liệu và Cloud Functions.
Tìm hiểu cách cài đặt và định cấu hình Local Emulator Suite.
Các công cụ khác để tạo mẫu và kiểm thử
Emulator Suite được bổ sung bằng các công cụ kiểm thử và tạo mẫu khác.
Công cụ kiểm thử Cloud Functions. Môi trường Firebase CLI cung cấp cho bạn một số cách để tạo mẫu và kiểm thử các hàm:
- Trình mô phỏng Cloud Functions, một phần của Bộ công cụ mô phỏng. Trình mô phỏng này có thể tương tác với dữ liệu cục bộ, dữ liệu trực tiếp và Quy tắc bảo mật trong trình mô phỏng Firestore và/hoặc trình mô phỏng Cơ sở dữ liệu thời gian thực.
- Trình bao Cloud Functions, cho phép tạo mẫu và phát triển các hàm lặp đi lặp lại, mang tính tương tác. Shell sử dụng trình mô phỏng Cloud Functions với giao diện theo kiểu REPL để phát triển. Không có chế độ tích hợp với trình mô phỏng Cloud Firestore hoặc Realtime Database. Bằng cách sử dụng shell, bạn có thể mô phỏng dữ liệu và thực hiện các lệnh gọi hàm để mô phỏng hoạt động tương tác với những sản phẩm mà Local Emulator Suite hiện không hỗ trợ: Analytics, Cấu hình từ xa và Crashlytics.
- Firebase Test SDK cho Cloud Functions, một Node.js có khung mocha để phát triển các hàm. Trên thực tế, Cloud Functions Test SDK cung cấp tính năng tự động hoá trên nền tảng Cloud Functions shell.
Bạn có thể tìm hiểu thêm về trình bao Cloud Functions và Cloud Functions Test SDK tại Kiểm thử các hàm một cách tương tác và Kiểm thử đơn vị của Cloud Functions.
Công cụ kiểm thử Quy tắc bảo mật. Emulator Suite là bộ công cụ được ưu tiên để kiểm thử Quy tắc bảo mật. Tuy nhiên, bạn cũng có thể sử dụng:
- Rules Playground, một phần của bảng điều khiển Firebase. Rules Playground mang đến trải nghiệm tương tác tuyệt vời để bắt đầu với thiết kế Quy tắc bảo mật. Để biết thêm thông tin, hãy xem bài viết Nhanh chóng xác thực các quy tắc bảo mật của Firebase.