Các phương pháp hay nhất để phân phối ứng dụng của Apple cho người kiểm thử đảm bảo chất lượng bằng CI/CD và Fastlane

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à nhanh để đảm bảo quy trình thử nghiệm trước khi phát hành trên nền tảng Apple của bạn diễn ra bền vững và lặp lại được trong môi trường CI/CD. Mặc dù tài liệu này tập trung vào khái niệm chuyển hướng nhanh, 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, Firebase CLI và API Firebase App Distribution công khai sẽ cung cấp cho 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 Các phương pháp hay nhất để phân phối ứng dụng Android cho người kiểm thử đảm bảo chất lượng 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:

  1. Mở trang App Distribution trong bảng điều khiển Firebase.

  2. Chọn ứng dụng iOS của bạn.

  3. 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 bạn muốn tự động hoá quá trình tạo và phát hành ứng dụng cho người kiểm thử và bạn đang dùng CI/CD, chúng tôi khuyên bạn nên sử dụng fastlane (chuyển nhanh). Một lựa chọn khác là sử dụng Firebase CLI, cho phép bạn truy cập vào nhiều sản phẩm của 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. Theo 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ử, đả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 fastlane, hãy xem phần Phân phối ứng dụng iOS cho người kiểm thử bằng fastlane. 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 FirebaseApp Distribution cung cấp để phân phối đến người kiểm thử theo cách có 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, bạn có thể thêm ghi chú phát hành và tệp chứa (không bắt buộc) email của người kiểm thử:

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 Giao diện dòng lệnh (CLI) Firebase để tự động hoá các bản dựng, hãy xem Phân phối ứng dụng iOS cho người kiểm thử bằng Firebase CLI.

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 các 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. Điều này có nghĩa là khi bạn vượt quá hạn mức 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á hạn mức. Để 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 nhiều người thử nghiệm 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 một 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 ý đến các giới hạn đối với 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 của bạn đến những người kiểm thử khác. Để tìm hiểu thêm về giới hạn số người kiểm thử, xem phần Có giới hạn đối với 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ý thêm thiết bị kiểm thử iOS, App Distribution sẽ giúp bạn quản lý thiết bị kiểm thử iOS của bạn trong Apple Developer Portal bằng cách thông báo cho bạn về thiết bị iOS của người kiểm thử mới qua email hoặc tệp CSV. Để tìm hiểu thêm, hãy xem Nhập người kiểm thử từ tệp CSV. Bạn cũng có thể xuất thiết bị mới bằng fastlane theo phương thức lập trình.

Để tìm hiểu cách thiết lập một thao tác tua nhanh tự động kéo xuống UDID, thêm chúng 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 phần Phân phối các bản dựng iOS phát hành trước nhanh hơn bằng App Distribution và nhanh.

Cho phép người thử nghiệm tiềm năng tự đăng ký tham gia thử nghiệm

Để 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 cho một nhóm. Mọi người kiểm thử đăng ký bằng đường liên kết 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ờiThê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 bạn tải một phiên bản mới lên, người kiểm thử sẽ nhận được thông báo qua email. Người nhận ngoài thông báo này, bạn có thể sử dụng các tính năng sau – phát hành và cảnh báo trong ứng dụng – để đảm bảo rằng người thử nghiệm của bạn đang thử nghiệm phiên bản ứng dụng cụ thể mà bạn quan tâm:

  • Đường liên kết đến bản 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 bài viết Phân phối ứng dụng iOS cho người kiểm thử bằng bảng điều khiển Firebase. Những đường liên kết này cũng hoạt động với Firebase của chúng tôi và chạy nhanh các công cụ dòng lệnh (CLI) để sử dụng với các công cụ tự động hoá xây dựng.

  • Cảnh báo trong ứng dụng: Sử dụng những 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 Firebase App Distribution dành cho iOS, bạn có thể hiển thị cảnh báo ngay bên 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: