Trong bài này, Cafedev sẽ giới thiệu cho các bạn các nền tảng thử nghiệm ứng dụng di động cực phổ biến và ưa chuộng trên thị trường và bao gồm các ưu điểm và nhược điểm của các nhà cung cấp – nền tảng này.

Test ứng dụng Beta trên thiết bị di động

Thử nghiệm là giai đoạn bạn phân phối ứng dụng cho một lượng lớn đối tượng để người ta sử dụng hoặc test ứng dụng trước khi bạn ra mắt ứng dụng của mình. Môi trường thử nghiệm được coi là một môi trường giống hệt như môi trường chính thức vậy, nơi người dùng có thể tìm thấy các vấn đề thực sự khi dùng app. Hiện này thì có các loại Test khác nhau như: unit testing, integration testing, functional testing or manual testing và không thể thiếu giai đoạn thử nghiệm ứng dụng beta. Thử nghiệm ứng dụng Beta mang đến sự tự tin rằng ứng dụng của bạn vẫn hoạt động tốt trước khi được phân phối cho một lượng đối tượng lớn hơn.

Trong quá trình thử nghiệm app beta của bạn, bạn cần phải có một nền tảng nào đó từ đó bạn có thể phân phối ứng dụng của mình cho các đối tượng tester hoặc người muốn dùng thử nghiệm app beta này. Hiện này, có khá nhiều nền tảng khác nhau có sẵn trên thị trường có thể hỗ trợ cho các bạn phân phối các bảng thử nghiệm của ứng dụng di động tới người dùng một cách dễ dàng nhất. Một số nền tảng đến từ chính Apple hoặc Google, trong khi những nền tảng khác đến từ các công ty bên thứ ba. Vì thế, sẽ có khá nhiều sự lựa chọn nền tảng nào phù hợp với nhu cầu và ngân sách dự án của bạn. Và bài này sẽ giúp bạn giải quyết vấn đề trên một cách nhanh nhất.

Nền tảng để thử nghiệm App Beta

Hầu hết các doanh nghiệp phát triển ứng dụng cho cả 2 nền tảng Android và iOS. Do đó, điều cần thiết là phải có nền tảng để phân phối bản app thử nghiệm, hỗ trợ cả ứng dụng iOS và Android mà không cần chuyển sang các nền tảng phân phối khác. Các nền tảng phân phối bản thử nghiệm do Apple và Google cung cấp thì bị giới hạn bởi cái này, chỉ phân phối test cho 1 nền tảng hệ điều hành duy nhất. Do đó, các công ty đang tìm kiếm các nền tảng phân phối app thử nghiệm có thể dễ dàng sử dụng cho cả ứng dụng iOS và Android. Giờ hãy cùng cafedev khám phá những nền tảng có thể giúp chúng ta phân phối bản thử nghiệm của các ứng dụng di động tới người dùng dưới đây.

Một số nền tảng phân phối bản thử nghiệm tốt nhất hiện nay

1. Nền tảng từ Apple và Google

TestFlight (iOS)

TestFlight là giải pháp của chính Apple để phân phối các bản thử nghiệm của iOS và các ứng dụng trên nền tảng khác của Apple. Apple mua lại TestFlight vào năm 2014 để hỗ trợ nhu cầu phân phối bản thử nghiệm của các ứng dụng trên nền tảng Apple. Khi các ứng dụng trên nền tảng của Apple được tải lên App Store Connect, chúng ta có thể dễ dàng lấy nó các ứng dụng đó bằng cách sử dụng Ứng dụng TestFlight .Và để có được bản app beta trên TestFlight, bạn phải có tài khoản Nhà phát triển của Apple và phải là thành viên của nhóm phát triển. Khi bản build được gửi để xem xét, chúng tôi có thể thêm người kiểm tra bên ngoài hoặc chia sẻ liên kết công khai cho bất kỳ ai để có bản build mới nhất đó. App Store Connect có giới hạn số lượng người kiểm tra nội bộ nhưng bạn có thể gửi được tới 10.000 người kiểm tra bên ngoài. Tuy nhiên, ứng dụng của bạn cần phải được gửi tới quy trình đánh giá của Apple rồi mới có thể gửi cho những người thử nghiệm bên ngoài. TestFlight cho phép chúng ta tạo các nhóm khác nhau và gán các build khác nhau cho các nhóm khác nhau. Nó hỗ trợ thử nghiệm 100 ứng dụng khác nhau cùng một lúc và các bản build có thể được gửi đến người dùng thông qua liên kết công khai. Bạn có thể xem video giới thiệu nhanh về TestFlight của Apple tại đây.

Ưu điểm của TestFlight

  • TestFlight là một công cụ được chính Apple quản lý, do đó bạn sẽ có được một môi trường giống như môi trường khi release sản phẩm.
  • TestFlight làm cho quá trình phân phối dễ dàng vì các ứng dụng có thể được gửi đến ứng dụng TestFlight và chúng ta cài qua app beta qua nó, Cài các ứng dụng đó bằng các liên kết công khai hoặc thêm địa chỉ email của người tester bên ngoài.
  • TestFlight là miễn phí.
  • TestFlight có khả năng cho người kiểm tra thêm ghi chú, một khu vực để cung cấp phản hồi về ứng dụng.
  • Kiểm soát tốt hơn về số lượng người thử nghiệm nên tham gia vào quá trình thử nghiệm beta.
  • Thông báo khi một phiên bản mới của ứng dụng được tải lên TestFlight.

Nhược điểm của TestFlight

  • TestFlight chỉ hỗ trợ các ứng dụng nền tảng của Apple.
  • Ứng dụng cần phải được gửi để xem xét trước khi gửi nó cho những người muốn thử nghiệm bản beta.
  • TestFlight không có một bảng điều khiển giám sát để theo dõi sự cố và số lượng người dùng hoạt động.

Google Play Console (Android)

Các thuật ngữ truyền thống như testing bản thử nghiệm alpha thử nghiệm bản beta đã bị Google Play Console bỏ rơi để ủng hộ cho việc test ’nội bộ,’ kín và thử nghiệm mở. Google Play Console là nền tảng thử nghiệm beta chính chủ của Android, do Google cung cấp. Bạn có thể tìm hiểu thêm về Google Play Console tại đây. Google có ba loại thử nghiệm khác nhau nhưng thử nghiệm mở có liên quan chặt chẽ với thử nghiệm beta. Các ứng dụng được đặt cho thử nghiệm mở có thể hiển thị trong Cửa hàng Play và có thể được tải xuống bởi bất kỳ ai. Không có giới hạn đối với số lượng ứng dụng bạn kiểm tra hoặc số lượng người thử nghiệm ứng dụng của bạn muốn tham gia vào quá trình. Bạn có thể đọc quy trình chi tiết của phương pháp thử nghiệm Google Google beta tại đây.

Ưu điểm của Google Play Console




  • Một giải pháp chính chủ của Google.
  • Không có giới hạn về số lượng ứng dụng và người thử nghiệm.
  • Chọn các loại thử nghiệm, ví dụ: nội bộ, đóng hoặc mở.
  • Các ứng dụng thử nghiệm mở có thể nhìn thấy trên cửa hàng chơi và có thể được tải xuống từ đó.
  • Kiểm soát số lượng người kiểm tra cho các ứng dụng mở.

Nhược điểm của Google Play Console

  • Chỉ hỗ trợ các ứng dụng nền tảng Android hoặc Google.
  • Trước khi thử nghiệm bản beta, ứng dụng cần phải trải qua quá trình phê duyệt Google.
  • Thử nghiệm đa bản build được hỗ trợ trong thử nghiệm mở.

2. Nền tảng thứ 3

Có hàng trăm giải pháp của bên thứ ba có sẵn trên thị trường để phân phối thử nghiệm app beta nhưng chúng tôi sẽ chỉ đề cập đến những giải pháp phổ biến. Các dịch vụ phân phối bản thử nghiệm app beta phổ biến nhất được sử dụng bởi các công ty như sau:

  • Crashlytics Beta (Fabric)
  • HockyApp/App Center
  • TestFairy
  • DelployGate
  • Testmagic‘ (nền tảng mới)
  • Firebase Distribution(Nền tảng mới)

Crashlytics (Fabric)

Crashlytics (Fabric) của Twitter và sau đó công cụ này đã được Google mua lại vào năm 2017. Crashlytics và Fabric là một SDK nguồn mở có thể được tích hợp vào bất kỳ ứng dụng nào. Tuy nhiên, Google đang cố gắng tích hợp nó với Firebase. Crashlytics kết hợp với Fabric có thể được sử dụng cho cả 2 nền tảng iOS và Android. Nó báo cáo các sự cố nhưng cũng cung cấp phân phối ứng dụng và dịch vụ phân tích ứng dụng. Với Fabric, bạn có thể phân phối các ứng dụng cho các nhóm người dùng or tester một cách rộng hơn. Những người muốn thử nghiệm bản beta sẽ nhận được lời mời email để tải xuống ứng dụng Crashlytics Beta và nhận phiên bản của ứng dụng để thử nghiệm. Không có giới hạn đối với số lượng người thử nghiệm ứng dụng, bạn có thể mời để kiểm tra bản build đó nhưng nếu bạn đang kiểm tra bản build ad-hoc nào đó, thì nó có giới hạn 100 thiết bị cho mỗi loại thiết bị (iPhone, iPad) của Apple. Nếu bạn có enterprise distribution certificate, thì bạn không có giới hạn đó. Crashlytics tích hợp với phần mềm theo dõi lỗi như JIRA, để bạn có thể tạo vấn đề dễ dàng hơn và fix nó.

Ưu điểm của Crashlytics Beta

  • SDK tải miễn phí.
  • Có khả năng tạo nhóm các người thử nghiệm ứng dụng của bạn.
  • Báo cáo sự cố và tính năng phân tích ứng dụng.
  • Hoạt động cho cả iOS và Android.

Nhược điểm của Beta Crashlytic

  • Giới hạn về số lượng thiết bị.
  • Phân phối ứng dụng yêu cầu scripts và nhúng SDK trong ứng dụng.
  • Người kiểm tra không thể cung cấp thông tin phản hồi trực tiếp.

HockyApp/App Center(Visual Studio App Center)

Hiện tại HockeyApp đang trong quá trình chuyển đổi hoàn toàn trở thành một phần của ứng dụng Visual Studio. HockeyApp từng là một công cụ phổ biến để thử nghiệm app beta và phân phối ứng dụng.

Microsoft HockeyApp là một trong những dịch vụ phân phối app beta phổ biến nhất trên thị trường. Nhiều công ty lớn bị thu hút về phía HockeyApp nhờ các tính năng độc đáo và tuyệt vời của nó. Nó rất phù hợp cho các công ty lớn phát triển nhiều ứng dụng khác nhau. Lý do tại sao Microsoft đặt tên nó là HockeyApp khá thú vị. Nó hỗ trợ nhiều nền tảng như Android, iOS, macOS và Windows phone, cũng như React Native, Xamarin và Unity. Apple gọi cài đặt ứng dụng beta trên thiết bị iOS là ‘ad hoc‘. Cái tên Hockey là một cách chơi chữ của từ ‘Hoc‘ trong ‘ ad hoc distribution’ và từ ‘Key‘. Khi họ tung ra HockeyApp, dự án nguồn mở đã trở nên phổ biến trong cộng đồng, vì vậy Microsoft đã giữ cùng tên này.

Vì HockeyApp đang ngừng hoạt động, Microsoft có kế hoạch cung cấp tất cả các tính năng của HockeyApp trong App Center. Tương tự như Crashlytics, nó cung cấp các tính năng báo cáo sự cố, quản lý bản thử nghiệm và thông báo. Người kiểm tra bản beta có thể nhận được liên kết để tải xuống ứng dụng và ứng dụng có thể được cài đặt chỉ bằng cách truy cập URL.

Ưu điểm của HockeyApp

  • Được quản lý bởi một tập đoàn lớn như Microsoft.
  • Báo cáo sự cố và phân tích ứng dụng.
  • Hoạt động trên cả nền tảng iOS và Android.
  • Quản lý các nhóm và người kiểm tra từ Dashboard.

Nhược điểm của HockeyApp




  • Các tính năng của HockeyApp sẽ được Microsoft kiểm soát sau khi chuyển sang App Center cuả họ.
  • Một số tính năng hiện có sẽ thay đổi sau khi chuyển đổi.

TestFairy

TestFairy là một nền tảng thử nghiệm app di động beta phổ biến khác. Nó có thể được sử dụng để thử nghiệm app beta Gốc (Android, iOS) hoặc ứng dụng đa nền tảng được phát triển bằng các công cụ như React Native hoặc Xamarin. TestFairy SDK cần được tích hợp vào ứng dụng để kích hoạt các tính năng như báo cáo sự cố. Một trong những khác biệt chính giữa TestFairy và các nền tảng khác là nó cung cấp tính năng quay video trong khi thử nghiệm ứng dụng. Nó trở nên dễ dàng hơn để báo cáo một vấn đề. TestFairy nhắm mục tiêu người dùng doanh nghiệp và có API tuyệt vời để tích hợp với các công cụ của bên thứ ba. Thật không may, TestFairy không miễn phí.

Ưu điểm của TestFairy

  • Các tính năng nâng cao như quay video và hiểu biết di động.
  • Có thể lưu trữ bằng cách sử dụng một đám mây riêng.
  • Ứng dụng Phản hồi và tích hợp dễ dàng với các công cụ khác.

Nhược điểm của TestFairy

  • Không miễn phí.
  • Không có kế hoạch giá cả rõ ràng.

DelployGate

Việc phát triển và thử nghiệm các ứng dụng Android có thể khó khăn, nhưng một giải pháp mới được ra mắt có tên DeployGate dự định sẽ loại bỏ nỗi đau đó ra khỏi một phần của quy trình phát triển App. Tóm lại, DeployGate cho phép các công ty phân phối các ứng dụng Android hiện đang được phát triển cho các thành viên trong nhóm qua mạng và theo dõi hiệu suất của app.

Dịch vụ cho phép người dùng tải các ứng dụng Android chưa phát hành lên nhiều thiết bị bằng cách kéo và thả chúng trong bảng điều khiển DeployGate, thu thập nhật ký và báo cáo hoặc đẩy cập nhật – một lần nữa, tất cả bằng cách sử dụng mạng.

Ưu điểm của DelployGate

  • Làm việc trong thời gian thực
  • Không nhất thiết phải có SDK
  • Không có yêu cầu ID thiết bị
  • Đặc biệt nhắm mục tiêu vào các developer để hỗ trợ tốt nhất cho họ

Nhược điểm của DelployGate

  • Hiện đang tập trung vào phát triển hợp tác cho Android
  • Có tốn phí

Một số thông tin chi tiết kỹ thuật có thể được tìm thấy ở đây.

Bây giờ, chúng tôi đã đề cập đến bốn nền tảng thử nghiệm app beta được sử dụng nhiều nhất. Bây giờ đã đến lúc giới thiệu một nền tảng thử nghiệm app beta mới cho bạn. Nó có tên gọi là “Testmagic

Testmagic

Nevercode đã ra mắt các công cụ thử nghiệm app beta mới có tên là Testmagic, một nền tảng thử nghiệm app beta khác có thể được sử dụng để thử nghiệm các ứng dụng di động. Testmagic hoạt động với CI / CD cho Flutter nhưng nó sẽ có cho tất cả các dịch vụ CI trong tương lai. Testmagic được thiết kế để hoạt động với mọi giải pháp CI / CD và nhắm đến các ứng dụng iOS và Android được phát triển với Flutter. Nếu bạn đang phát triển ứng dụng với Flutter, thì bạn nên kiểm tra các giải pháp Testmagic để thử nghiệm app beta. Có một hướng dẫn tuyệt vời để bắt đầu trên Testmagic, nó sẽ giúp bạn thiết lập ứng dụng Flutter trên Testmagic. Một số tính năng của Testmagic là:




  • Dễ dàng tích hợp với các công cụ CI / CD để đăng ký thiết bị
  • Tải xuống một cách đơn giản bằng cách chia sẻ liên kết
  • Khả năng cung cấp phản hồi từ ứng dụng.

Sắp có nhiều tính năng mới như tích hợp với các dịch vụ CI / CD khác, nhật ký build, báo cáo sự cố, v.v. Vì vậy, hãy theo dõi các bản cập nhật Testmagic.

Firebase Distribution

Phân phối ứng dụng Firebase là một dịch vụ mới cho phép bạn phân phối các ứng dụng Android và iOS phát hành trước cho những người thử nghiệm. Nó giống như các bản phát hành nội bộ / alpha / beta của Google Play, nhưng một số tính năng chính là:

Ưu điểm của Firebase Distribution

  • Vì nó mới ra nên kế thừa và phát huy khá nhiều tính năng của những nền tảng khác đi trước.
  • Quản lý người test thông qua các nhóm, với việc nhập email người test
  • Tính linh hoạt của các phiên bản mà nhà phát triển có thể tải lên, Cho phép tải lên cùng một phiên bản nhiều lần và nó tùy thuộc vào trình cài đặc của họ.
  • Mời công khai để bất cứ ai cũng có thể tham gia thử nghiệm của bạn bằng liên kết
  • Hướng dẫn họ cài đặt và test.
  • App Tester cho Android giống như ứng dụng TestFlight trên iOS

Nhược điểm của Firebase Distribution

  • Buộc phải tích hợp Firebase
  • Hiện đang beta (Beta của Google thì khá ngon)
  • Hiện đang miễn phí, không biết sau khi hết beta sẽ như thế nào.
  • Phải login và tạo project ở đây: Google Cloud Platform console

Video giới thiệu về Firebase Distribution nếu bạn muốn hiều thêm về nó

Thử nghiệm app beta trên thiết bị di động là một giai đoạn thiết yếu trong khi phát hành ứng dụng cho khách hàng. Hiện tại có hàng trăm công cụ làm điều đó trên thị trường, nhưng việc chọn đúng công cụ có thể là một thách thức. Đó là một ý tưởng tuyệt vời để theo dõi thị trường và xem xu hướng hiện tại trong thử nghiệm app beta trên thiết bị di động là gì?

Một bài khá hay về Firebase cho bạn tham khảo

Còn bạn thì sao? Hãy chia sẽ và cho chúng tôi biết ý kiến của bạn về vấn đề này?