Firebase Local Emulator Suite là một bộ công cụ nâng cao dành cho các 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 (beta), Pub/Sub (beta) và Firebase Extensions (beta). Công cụ này 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 bản minh hoạ.
Quy trình 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 bản mô hình, phát triển và tích hợp liên tục.
Trước khi bắt đầu
Trước khi khám phá Bộ công cụ mô phỏng cục bộ của Firebase, bạn nên tìm hiểu về các sản phẩm Firebase và mô hình phát triển 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 ứng dụng khởi động nhanh sẵn sàng chạy trên nền tảng bạn chọn, sau đó đọc và thực thi mã. Ứng dụng khởi động 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 tạo để 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 trực tiếp ứng dụng với các trình mô phỏng này để thực hiện kiểm thử tích hợp hoặc kiểm thử chất lượng mà không cần chạm vào dữ liệu sản xuất.
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 hoạt động 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 sẽ vẫn tiếp tục giao tiếp với các dịch vụ Firebase chính thức khi không có hoặc không được định cấu hình trình mô phỏng.
Bộ công cụ mô phỏng trong quy trình làm việc cục bộ
Quy trình kiểm thử và nguyên mẫu của bạn có thể tận dụng Bộ trình mô phỏng cục bộ theo một số cách:
- Kiểm thử đơn vị: bằng cách sử dụng SDK kiểm thử Firebase, bạn có thể viết mã kiểm thử đơn vị trong Node.js bằng trình chạy kiểm thử mocha. SDK kiểm thử 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 lần kiểm thử và quản lý hoạt động tương tác đồng bộ với trình mô phỏng. Đây là một cách tuyệt vời để viết các chương trình kiểm thử đơn giản cho các hoạt động tương tác với cơ sở dữ liệu 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ộ trình mô phỏng phản hồi các lệnh gọi SDK và API REST giống như các dịch vụ Firebase chính thức. 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ây rủi ro cho 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, đồng thời hiểu rõ hơn về các tính 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 Firebase nào được hỗ trợ?
Bộ công cụ mô phỏng trên thiết bị của Firebase cho phép bạn kiểm thử mã của mình 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 trong nền do Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication và Pub/Sub kích hoạt. Trình mô phỏng Cloud Firestore, Realtime Database và Cloud Storage for Firebase tích hợp tính năng mô phỏng Firebase Security Rules.
Đám mây Firestore |
Cơ sở dữ liệu theo thời gian thực |
Bộ nhớ trên đám mây cho Firebase |
Xác thực | Hàm trên đám mây |
Cloud Pub/Sub |
Tiện ích | |
---|---|---|---|---|---|---|---|
SDK Android | ![]() |
![]() |
![]() |
![]() |
![]() |
không có | không có |
SDK iOS | ![]() |
![]() |
![]() |
![]() |
![]() |
không có | không có |
SDK web | ![]() |
![]() |
![]() |
![]() |
![]() |
không có | không có |
SDK dành cho quản trị viên Node.js | ![]() |
![]() |
![]() |
![]() |
không có | ![]() |
không có |
Các bước tiếp theo
Bắt đầu bằng hướng dẫn từng bước về Local Emulator Suite, hướng dẫn này cho bạn biết cách tạo bản mô hình cơ sở dữ liệu và Cloud Functions ngoại tuyến.
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 bản mô hình và kiểm thử
Bộ trình mô phỏng được bổ sung bằng các công cụ kiểm thử và nguyên mẫu khác.
Công cụ kiểm thử Cloud Functions. Môi trường Giao diện dòng lệnh (CLI) của Firebase cung cấp cho bạn một số cách để tạo nguyên mẫu và kiểm thử các hàm:
- Trình mô phỏng Cloud Functions, một phần của Bộ trình 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.
- Vỏ chức năng trên đám mây cho phép tạo bản mô hình và phát triển các hàm tương tác, lặp lại. Shell sử dụng trình mô phỏng Cloud Functions với giao diện kiểu REPL để phát triển. Không tích hợp với trình mô phỏng Cloud Firestore hoặc Realtime Database. Khi sử dụng shell, bạn mô phỏng dữ liệu và thực hiện lệnh gọi hàm để mô phỏng hoạt động tương tác với các sản phẩm mà Local Emulator Suite hiện không hỗ trợ: Analytics, Cấu hình từ xa và Crashlytics.
- SDK kiểm thử Firebase cho Cloud Functions, một Node.js có khung mocha để phát triển các hàm. Về cơ bản, SDK kiểm thử Cloud Functions cung cấp tính năng tự động hoá trên shell Cloud Functions.
Bạn có thể tìm hiểu thêm về shell của Cloud Functions và SDK kiểm thử Cloud Functions trong bài viết Kiểm thử hàm theo 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. Bộ trình mô phỏng là bộ công 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 (Khu vui chơi quy tắc), 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 khi bắt đầu thiết kế Quy tắc bảo mật. Để biết thêm thông tin, hãy xem bài viết Xác thực nhanh Quy tắc bảo mật của Firebase.