Tài liệu này giới thiệu các phương pháp hay nhất để sử dụng Firebase App Distribution và fastlane nhằm giúp quy trình kiểm thử trước khi phát hành trên nền tảng Apple của bạn trở nên bền vững và có thể lặp lại trong môi trường CI/CD. Mặc dù tài liệu này tập trung vào Fastlane, nhưng chúng tôi cũng mô tả các giải pháp có sẵn thông qua bảng điều khiển Firebase, CLI Firebase và API App Distribution Firebase công khai để giúp bạn linh hoạt hơn. Chúng tôi cũng mô tả các giới hạn về bản phát hành và người kiểm thử để bạn có thể lên kế hoạch trước nhằm có được trải nghiệm tối ưu.
Nếu bạn cũng đang sử dụng Android, hãy xem bài viết Các phương pháp hay nhất để phân phối ứng dụng Android cho người kiểm thử QA bằng CI/CD.
Trước khi bắt đầu
Trước khi triển khai các phương pháp hay nhất trong tài liệu này, hãy nhớ bật App Distribution trong bảng điều khiển Firebase cho từng ứng dụng. Nếu chưa bật App Distribution, bạn sẽ gặp lỗi 404.
Để bật App Distribution, hãy làm theo các bước sau:
Mở trang App Distribution trong bảng điều khiển Firebase.
Chọn ứng dụng iOS của bạn.
Nhấp vào Bắt đầu.
Tự động hoá quy trình thử nghiệm trước khi phát hành bằng CI/CD
Nếu muốn tự động hoá việc tạo và phát hành ứng dụng cho người kiểm thử và bạn đang sử dụng CI/CD, bạn nên sử dụng công cụ fastlane (nhanh). Một lựa chọn khác là sử dụng CLI Firebase. CLI này cho phép bạn truy cập vào nhiều sản phẩm Firebase.
Sử dụng fastlane
Tích hợp App Distribution vào quy trình CI/CD bằng fastlane, một công cụ nguồn mở tự động hoá việc tạo và phát hành ứng dụng iOS và Android. Bằng cách tự động tạo và phân phối bản phát hành mới nhất cho người kiểm thử, bạn đảm bảo người kiểm thử luôn có phiên bản kiểm thử mới nhất của ứng dụng.
Để tìm hiểu cách tích hợp App Distribution với tua nhanh, hãy xem bài viết Phân phối ứng dụng iOS cho người thử nghiệm bằng tua nhanh. Ngoài ra, hãy xem lớp học lập trình hướng dẫn bạn thực hiện quy trình tích hợp fastlane.
Sử dụng CLI Firebase
Sử dụng các công cụ CLI Firebase mà App Distribution cung cấp để phân phối bản dựng cho người kiểm thử theo cách lập trình. Bạn có thể chỉ định người kiểm thử và ghi chú phát hành cho một bản dựng.
Phân phối bản dựng iOS mới nhất test.ipa
bằng cách chỉ định Mã ứng dụng Firebase của ứng dụng, thêm ghi chú phát hành và tệp chứa email của người kiểm thử (không bắt buộc):
firebase appdistribution:distribute test.ipa \ --app 1:1234567890:ios:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
Để tìm hiểu thêm về cách sử dụng CLI Firebase để tự động hoá bản dựng, hãy xem phần Phân phối ứng dụng iOS cho người kiểm thử bằng CLI Firebase.
Sử dụng thông tin xác thực dịch vụ để xác thực
Sử dụng trình bổ trợ fastlane App Distribution hoặc CLI Firebase với tài khoản dịch vụ. Các tài khoản này tận dụng Thông tin xác thực mặc định của ứng dụng và giúp bạn quản lý CI. Tài khoản dịch vụ là một loại Tài khoản Google đại diện cho các ứng dụng chứ không phải người dùng. Hệ thống CI của bạn có thể sử dụng tài khoản dịch vụ để chạy khối lượng công việc App Distribution. Để tìm hiểu thêm, hãy xem bài viết Xác thực bằng tài khoản dịch vụ.
Nếu đang sử dụng tính năng liên kết danh tính theo mức tải, bạn có thể tạo và sử dụng tệp cấu hình thông tin xác thực thay vì khoá tài khoản dịch vụ.
Lưu ý đến các giới hạn về bản phát hành
App Distribution hỗ trợ tối đa 1.000 bản phát hành cho mỗi ứng dụng. Tức là khi bạn vượt quá giới hạn bản phát hành, App Distribution sẽ tự động xoá các bản phát hành cũ nhất vượt quá giới hạn. Để tìm hiểu cách quản lý các giới hạn về bản phát hành, hãy xem bài viết Bản phát hành ứng dụng có thời hạn bao lâu?
Thêm cùng một nhóm người kiểm thử vào nhiều bản phát hành
Nếu bạn muốn thêm số lượng lớn người kiểm thử vào bản phát hành của mình, hãy sử dụng chức năng quản lý người kiểm thử hàng loạt của App Distribution.
Bạn nên sử dụng nhóm để thêm cùng một người kiểm thử vào nhiều bản phát hành. Nhóm đóng vai trò là danh sách kiểm soát quyền truy cập; khi bạn xoá một người kiểm thử khỏi một nhóm, họ sẽ mất quyền truy cập vào tất cả bản phát hành được phân phối cho nhóm đó. Để tìm hiểu thêm, hãy xem phần Thêm và xoá người kiểm thử khỏi nhóm.
Nếu có nhiều người kiểm thử cần quản lý, bạn có thể thêm và xoá người kiểm thử hàng loạt bằng bảng điều khiển Firebase. Để tự động thêm và xoá người kiểm thử, hãy sử dụng CLI Firebase, fastlane hoặc API App Distribution Firebase công khai.
Lưu ý về giới hạn số người kiểm thử
App Distribution giới hạn số lượng người kiểm thử mà bạn có thể thêm vào một dự án Firebase hoặc một nhóm App Distribution. Khi vượt quá các giới hạn này, bạn sẽ không thể phân phối ứng dụng cho người kiểm thử khác. Để tìm hiểu thêm về các giới hạn đối với người kiểm thử, hãy xem bài viết Có giới hạn về việc thêm người kiểm thử vào ứng dụng của tôi không?
Quản lý và tự động thêm thiết bị kiểm thử iOS mới
Để giúp bạn đăng ký các thiết bị kiểm thử iOS khác, App Distribution giúp bạn quản lý các thiết bị kiểm thử iOS của mình trong Apple Developer Portal bằng cách thông báo cho bạn về các thiết bị kiểm thử iOS mới qua email hoặc tệp CSV. Để tìm hiểu thêm, hãy xem phần Nhập người kiểm thử từ tệp CSV. Bạn cũng có thể lập trình để xuất thiết bị mới bằng cách dùng tua nhanh.
Để tìm hiểu cách thiết lập thao tác fastlane tự động tải xuống các mã nhận dạng thiết bị duy nhất (UDID), thêm các mã này vào bảng điều khiển dành cho nhà phát triển của Apple, sau đó tạo lại ứng dụng và phân phối ứng dụng, hãy xem bài viết Phân phối bản dựng iOS trước khi phát hành nhanh hơn bằng App Distribution và fastlane.
Cho phép người kiểm thử tiềm năng tự đăng ký tham gia kiểm thử
Để dễ dàng phân phối ứng dụng cho nhiều người kiểm thử hơn, bạn nên sử dụng đường liên kết mời. Đường liên kết mời là một URL duy nhất cho phép người kiểm thử nhập địa chỉ email của họ để đăng ký kiểm thử một ứng dụng. Việc cho phép người dùng tự thêm mình vào danh sách người kiểm thử ứng dụng là một cách liền mạch để tăng cơ sở kiểm thử nội bộ.
Các trường hợp sử dụng đường liên kết mời bao gồm các chương trình thử nghiệm nội bộ của công ty, các tổ chức có nhóm đảm bảo chất lượng lớn và các nhóm nhà phát triển muốn từng khách hàng có thể kiểm soát quyền truy cập của người kiểm thử.
Bạn nên tạo đường liên kết mời tham gia nhóm. Mọi người kiểm thử đăng ký bằng đường liên kết của lời mời sẽ tự động được thêm vào các bản phát hành tiếp theo.
Để tìm hiểu thêm, hãy xem bài viết Tạo đường liên kết mời và Thêm và xoá người kiểm thử khỏi một nhóm.
Đảm bảo rằng người kiểm thử đang kiểm thử phiên bản mà bạn quan tâm
Khi phiên bản mới được tải lên, người kiểm thử sẽ nhận được thông báo qua email. Để bổ sung thông báo này, bạn có thể sử dụng các tính năng sau – đường liên kết phát hành và cảnh báo trong ứng dụng – để đảm bảo người kiểm thử đang kiểm thử phiên bản ứng dụng cụ thể mà bạn quan tâm:
Đường liên kết phát hành: Sử dụng tính năng này khi bạn muốn chia sẻ một phiên bản cụ thể với người kiểm thử. Để tìm hiểu cách sử dụng đường liên kết đến bản phát hành, hãy xem phần Phân phối ứng dụng iOS cho người kiểm thử bằng bảng điều khiển Firebase. Các đường liên kết này cũng có sẵn trong các công cụ dòng lệnh (CLI) Firebase và fastlane để sử dụng với các công cụ tự động hoá bản dựng của bạn.
Cảnh báo trong ứng dụng: Sử dụng các cảnh báo này khi bạn muốn đảm bảo rằng người kiểm thử đang kiểm thử phiên bản mới nhất của ứng dụng. Bằng cách tích hợp SDK iOS App Distribution của Firebase, bạn có thể hiển thị cảnh báo ngay trong ứng dụng cho người kiểm thử khi có bản dựng mới của ứng dụng. Để tìm hiểu cách thêm cảnh báo trong ứng dụng, hãy xem phần Thông báo cho người kiểm thử về bản dựng mới.
Tự động xoá quyền truy cập của những người thử nghiệm đã rời khỏi công ty
Sau khi quy trình kiểm thử nội bộ CI/CD của bạn hoạt động, bạn cần đảm bảo rằng những người rời khỏi công ty không còn quyền truy cập vào các bản dựng nội bộ của bạn. Để giúp bạn quản lý quyền truy cập của người kiểm thử vào các bản dựng, App Distribution cung cấp các tuỳ chọn sau:
fastlane: Sử dụng tệp Fastfile hoặc chạy trực tiếp các thao tác fastlane. Để tìm hiểu thêm về cách sử dụng fastlane để xoá người kiểm thử, hãy xem phần Phân phối ứng dụng iOS cho người kiểm thử bằng fastlane.
API Firebase App Distribution công khai: Sử dụng điểm cuối
testers.batchRemove
.