Tích hợp Phòng thử nghiệm vào hệ thống CI/CD

1. Giới thiệu

Lần cập nhật gần đây nhất: ngày 7 tháng 4 năm 2022

Cách chạy kiểm thử trên thiết bị di động bằng hệ thống CI/CD

Chạy thử nghiệm thiết bị di động có thể khó khăn: nhiều ứng dụng chạy trên các nền tảng, thiết bị và phiên bản API khác nhau. Nhà phát triển ứng dụng muốn kiểm thử trên nhiều cấu hình nhất có thể để phát hiện vấn đề trước khi người dùng tiến hành kiểm thử. Tuy nhiên, những hạn chế về chi phí và tài nguyên cũng giới hạn số lượng thiết bị thử nghiệm và thời gian bảo trì thủ công mà từng nhà phát triển có thể đầu tư. Khi quy trình phát triển mở rộng quy mô, đặc biệt là đối với các hệ thống tích hợp/phát triển liên tục (CI/CD), quy trình thử nghiệm cần được tự động hoá đồng thời giảm thiểu chi phí và công sức bảo trì.

Để giúp bạn nắm được hiệu suất của ứng dụng trên trang web của người dùng thiết bị di động, Phòng thử nghiệm Firebase lưu trữ một loạt thiết bị thực và thiết bị ảo di động trong các trung tâm dữ liệu của chúng tôi. Chúng tôi cũng cung cấp Google Cloud CLI, một công cụ dòng lệnh độc lập về nền tảng giúp sắp xếp các hoạt động kiểm thử trên các thiết bị trong trung tâm dữ liệu của chúng tôi. CLI của gcloud giúp bạn dễ dàng tích hợp giải pháp thử nghiệm trên đám mây của Test Lab vào các quy trình làm việc CI/CD hiện có.

Hỗ trợ nhiều nền tảng

Phòng thử nghiệm cung cấp các giải pháp thử nghiệm cho các ứng dụng Android và iOS cũng như dịch vụ hỗ trợ đặc biệt cho các trò chơi dành cho thiết bị di động như Unity. Các tuỳ chọn kiểm thử bao gồm những khung kiểm thử phổ biến như Android Espresso, UI Automator và iOS XCTest. Bằng cách sử dụng trình thu thập thông tin tự động của chúng tôi, Rbo, Phòng thử nghiệm thậm chí có thể chạy thử nghiệm mà không cần bất kỳ mã thử nghiệm nào.

Không yêu cầu phần cứng

Test Lab lưu trữ các thiết bị thực trong các trung tâm dữ liệu của Google và lưu trữ các thiết bị ảo trong Google Cloud. Bạn chỉ cần gửi các xét nghiệm của mình đến Test Lab và chờ kết quả.

Nhanh và ổn định

Việc chạy nhiều trường hợp kiểm thử đồng thời có thể mất nhiều thời gian, làm chặn các quy trình CI/CD. Với Phòng thử nghiệm, bạn có thể dễ dàng phân đoạn và chạy các chương trình kiểm thử trên nhiều thiết bị song song. Bạn cũng có thể phát hiện tình trạng bong tróc, một vấn đề phổ biến khi kiểm tra bằng thiết bị di động.

Kiến thức bạn sẽ học được

  • Cách tạo cấu phần phần mềm kiểm thử
  • Cách chạy kiểm thử trên thiết bị di động bằng gcloud CLI
  • Cách thiết lập Jenkins CI
  • Cách chạy kiểm thử trên thiết bị di động bằng Jenkins CI
  • Cách định cấu hình kiểm thử để mở rộng quy mô bằng hệ thống CI

Lớp học lập trình này sẽ tập trung vào việc chạy kiểm thử. Các khái niệm và khối mã không liên quan được che khuất và chỉ được cung cấp cho bạn để sao chép và dán.

Bạn cần có

Nếu muốn xây dựng mọi thứ từ đầu, bạn cần có Android Studio để chạy kiểm thử Android hoặc XCode để chạy kiểm thử iOS. Hoặc bạn chỉ cần tự mang theo để chúng tôi cung cấp đồ tạo tác cho bạn.

2. Chạy thử nghiệm bằng gcloud CLI

Tạo APK ứng dụng Android và kiểm thử APK

Để chạy kiểm thử bằng Phòng thử nghiệm, hãy bắt đầu bằng cách tạo APK ứng dụng Android và APK kiểm thử chứa các kiểm thử đo lường để chạy trên trình mô phỏng hoặc thiết bị phần cứng. Nếu đã có cơ sở mã đang hoạt động, bạn có thể tạo các tệp APK của riêng mình hoặc dùng BasicSample cho Espresso.

Để xây dựng các tệp APK bằng lệnh Gradle, bạn phải cài đặt SDK Android. Nếu bạn chưa cài đặt Android Studio trên máy, hãy cài đặt Android Studio và SDK Android rồi thiết lập môi trường ANDROID_HOME bằng thư mục SDK Android. Ví dụ: trong tệp ~/.bash_profile, hãy thêm dòng sau:

export ANDROID_HOME=~/Android/Sdk # For linux
export ANDROID_HOME=~/Library/Android/sdk  # For MacOS

Sau đó, hãy chạy các lệnh sau để sao chép mã và tạo tệp APK:

git clone https://github.com/android/testing-samples.git
cd testing-samples/ui/espresso/BasicSample/
./gradlew assembleDebug  # for generating app apk
./gradlew assembleDebugAndroidTest # for generating testing apk

Sau khi chạy lệnh sao chép và bản dựng, bạn có thể tìm thấy APK ứng dụng và APK kiểm thử ở những vị trí sau:

app/build/outputs/apk/debug/app-debug.apk
app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk

Ngoài ra, bạn có thể sử dụng các cách sau để tải tệp APK ứng dụng và tệp kiểm thử:

  • Để tạo tệp APK trong Android Studio, hãy làm theo hướng dẫn trong bài viết Kiểm thử trong Android Studio.
  • Tải ứng dụng Notepad mẫu xuống. Sử dụng tệp nhị phân app-debug-unaligned.apk và tệp kiểm thử đo lường app-debug-test-unaligned.apk, nằm trong NotePad/app/build/outputs/apk/.

Nếu có mã nguồn đang hoạt động cho một ứng dụng iOS, bạn có thể viết XCTesttạo tệp zip từ ứng dụng và các bài kiểm thử.

Sử dụng Giao diện dòng lệnh (CLI) của gcloud để chạy thử nghiệm với Phòng thử nghiệm

Trong phần này, bạn sẽ tạo một dự án Firebase và định cấu hình môi trường Google Cloud SDK cục bộ. Để tìm hiểu thêm, hãy xem phần Bắt đầu thử nghiệm bằng gcloud CLI .

Thiết lập giao diện dòng lệnh (CLI) của gcloud

  1. Tải Google Cloud SDK xuống, có sẵn công cụ gcloud CLI.
  2. Xác minh rằng bản cài đặt của bạn đã được cập nhật:
gcloud components update
  1. Đăng nhập vào Giao diện dòng lệnh (CLI) của gcloud bằng Tài khoản Google của bạn:
gcloud auth login
  1. Đặt dự án Firebase của bạn trong gcloud CLI, trong đó PROJECT_ID là mã dự án Firebase. Bạn có thể tìm thấy mã dự án trong URL của Bảng điều khiển của Firebase theo quy ước đặt tên sau: https://console.firebase.google.com/project/[PROJECT_ID]/...
gcloud config set project PROJECT_ID

Nếu bạn chưa có dự án Firebase, hãy tạo một dự án trong Bảng điều khiển của Firebase.

Chạy kiểm thử bằng APK đã tạo

Trong phần này, bạn sẽ chạy một kiểm thử đo lường trên thiết bị mặc định của Phòng thử nghiệm, là Pixel 3 với API cấp 28. Nếu bạn muốn sử dụng một thiết bị khác, hãy kiểm tra các thiết bị hiện có.

Sử dụng ứng dụng và tệp APK kiểm thử mà bạn đã tạo trong ứng dụng Tạo tệp APK ứng dụng Android và tệp APK kiểm thử, chạy bài kiểm thử đo lường Android bằng lệnh sau:

gcloud firebase test android run \
  --type instrumentation \
  --app app/build/outputs/apk/debug/app-debug.apk \
  --test app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk

Phân tích kết quả kiểm thử

Bạn có thể phân tích kết quả kiểm thử bằng một trong những cách sau đây:

  • gcloud Tóm tắt – khi thử nghiệm của bạn kết thúc, gcloud CLI sẽ in một bản tóm tắt cơ bản về kết quả thử nghiệm.
  • gcloud mã thoát – sau khi kiểm thử hoàn tất, lệnh sẽ thoát bằng 0 nếu kiểm thử thành công. Nếu kiểm thử không thành công, lệnh sẽ thoát với một mã thoát khác 0.
  • Bảng điều khiển của Firebase – gcloud CLI in một đường liên kết đến Bảng điều khiển của Firebase. Đường liên kết tuân theo quy ước đặt tên https://console.firebase.google.com/project/PROJECT_ID/testlab/... Để tìm hiểu thêm, hãy xem phần Diễn giải kết quả từ một lần chạy kiểm thử.
  • Tệp XML JUnit – CLI gcloud in như sau:
Raw results will be stored in your Cloud Storage bucket at [https://console.developers.google.com/storage/browser/test-lab-xxxxx/xxxxx/]

test-lab-xxxxx/xxxxx là bộ chứa Cloud Storage lưu trữ các cấu phần phần mềm và kết quả kiểm thử. Để tìm tệp XML JUnit chứa kết quả kiểm thử, hãy mở đường liên kết và chuyển đến blueline-28-en-portrait/test_result_1.xml.

3. Thiết lập bằng Jenkins CI

Trong phần này, bạn sử dụng Jenkins CI, một hệ thống CI phổ biến, để chạy kiểm thử với Test Lab. Nếu bạn muốn sử dụng một hệ thống CI khác, hãy xem Các phương pháp hay nhất trong mục Nâng cao để chạy các bộ kiểm thử lớn và tài liệu về các hệ thống CI khác như BitriseSquare CI. Bạn có thể sử dụng Flank để thay thế cho gcloud CLI.

Bật gcloud CLI cho Jenkins

Trước khi có thể sử dụng Phòng thử nghiệm với Jenkins, bạn phải bật các API bắt buộc và thiết lập tài khoản dịch vụ mà Jenkins có thể dùng để xác thực với CLI của gcloud.

Thêm tài khoản dịch vụ Google Cloud cho Jenkins

Tài khoản dịch vụ là những tài khoản giới hạn dùng để tích hợp dịch vụ. Những tài khoản này cung cấp quyền kiểm soát chi tiết đối với các dịch vụ cụ thể và không phải kiểm tra thư rác hoặc lời nhắc bằng hình ảnh xác thực (captcha). Những tài khoản này có thể chặn các bản dựng CI của bạn.

Để tạo một tài khoản dịch vụ, hãy làm theo các bước sau:

  1. Mở trang Tài khoản dịch vụ trong Google Cloud Console.
  2. Nhấp vào Tạo tài khoản dịch vụ, thêm TênNội dung mô tả, sau đó nhấp vào Tạo và tiếp tục.
  3. Trong trình đơn thả xuống Chọn vai trò, hãy chọn Cơ bản rồi chọn Người chỉnh sửa.
  4. Nhấp vào Tiếp tục, rồi nhấp vào Xong.

Tiếp theo, bạn tạo và tải khoá xác thực xuống mà Jenkins có thể dùng để xác thực là tài khoản dịch vụ bạn đã tạo.

Để tạo và tải khoá tài khoản dịch vụ xuống, hãy làm theo các bước sau:

  1. Trên trang Tài khoản dịch vụ trong Google Cloud Console, hãy nhấp vào email liên kết với tài khoản mà bạn đã tạo.
  2. Chọn Keys (Khoá), sau đó nhấp vào Add key (Thêm khoá) và Create new key (Tạo khoá mới).
  3. Chọn JSON, rồi nhấp vào Tạo.
  4. Khi bạn được nhắc tải tệp xuống, hãy nhấp vào OK. Tải tệp xuống một nơi an toàn trên máy tính của bạn. Bạn sẽ cần tệp này sau khi định cấu hình Jenkins.

Để tìm hiểu thêm về việc tạo tài khoản dịch vụ, hãy xem bài viết Tạo tài khoản dịch vụ.

Bật API Google Cloud bắt buộc

Cloud Testing API cho phép bạn chạy kiểm thử trên cơ sở hạ tầng của Google. Bạn đã bật API này khi hoàn thành quy trình Chạy thử nghiệm bằng gcloud CLI. Cloud Tool Results API cho phép bạn truy cập kết quả kiểm thử theo phương thức lập trình.

  1. Mở Thư viện API Google Developers Console.
  2. Trong thanh tìm kiếm ở đầu Bảng điều khiển của Firebase, hãy nhập tên của từng API bắt buộc ( Cloud Testing APICloud Tool Results API). Trang tổng quan cho API được yêu cầu sẽ xuất hiện.
  3. Nhấp vào Bật API trên trang tổng quan của từng API.

Cài đặt và thiết lập Jenkins

Bạn có thể cài đặt và thiết lập Jenkins CI trên Linux, macOS, Windows và nhiều môi trường khác. Một số thông tin của lớp học lập trình này dành riêng cho việc cài đặt và chạy Jenkins CI trên Linux, bao gồm cả việc sử dụng dấu gạch chéo (/) trong đường dẫn tệp.

Để tải xuống và cài đặt Jenkins trên máy tính chạy Linux hoặc Windows, hãy làm theo hướng dẫn để cài đặt Jenkins. Sau khi bạn cài đặt Jenkins, hãy làm theo hướng dẫn cài đặt tương tự của Jenkins để hoàn tất quá trình thiết lập và truy cập vào trang tổng quan của Jenkins bằng http://localhost:8080.

Xác minh trình bổ trợ đã cài đặt

Jenkins hỗ trợ nhiều hệ thống quản lý phiên bản. Trong lớp học lập trình này, bạn sẽ sử dụng Git để chạy chương trình kiểm thử trước. Ngoài ra, để có trải nghiệm tốt hơn khi chạy gcloud CLI, bạn cần cài đặt Trình bổ trợ SDK GCloud.

  1. Trên trang tổng quan Jenkins, hãy nhấp vào Manage Jenkins (Quản lý Jenkins) rồi nhấp vào Manage Plugins (Quản lý trình bổ trợ).
  2. Tìm và cài đặt các trình bổ trợ GitGCloud SDK (nếu chưa cài đặt).

Định cấu hình vị trí của SDK Android và Google Cloud SDK

Bây giờ, bạn hướng dẫn cho Jenkins nơi tìm Google Cloud SDK và SDK Android.

Để định cấu hình Google Cloud và SDK Android cho Jenkins, hãy làm theo các bước sau:

  1. Trên trang tổng quan Jenkins, hãy nhấp vào Manage Jenkins (Quản lý Jenkins), sau đó nhấp vào Global Tool Configuration (Cấu hình công cụ chung).
  2. trong mục Google Cloud SDK, hãy nhấp vào Thêm Google Cloud SDK.
  3. Trong trường Tên, hãy nhập tên cho phiên bản SDK Google Cloud sao cho dễ nhớ, ví dụ: GCloud-SDK.
  4. Nhập thư mục gốc của Google Cloud SDK, ví dụ: /opt/google-cloud-sdk.
  5. Nhấp vào Lưu.
  6. Định cấu hình các tài sản trên toàn hệ thống cho Android và Google Cloud SDK bằng cách mở Trang tổng quan > Quản lý Jenkins > Định cấu hình hệ thống.
  7. Đánh dấu vào hộp Environment variables (Biến môi trường) rồi nhấp vào Add (Thêm).
  8. Trong trường Name (Tên), hãy nhập ANDROID_HOME. Trong trường Giá trị, hãy nhập vị trí của SDK Android của bạn (ví dụ: /opt/Android/Sdk).
  9. Nhấp vào hộp kiểm Vị trí công cụ và nhấp vào Thêm. Trong trình đơn thả xuống Name (Tên), hãy chọn tên của phiên bản Google Cloud SDK mà bạn đã thêm trong Global Tool Configuration.
  10. Trong trường Home (Trang chủ), hãy nhập vị trí của Google Cloud SDK của bạn, ví dụ: /opt/google-cloud-sdk.
  11. Nhấp vào Lưu.

Thêm thông tin đăng nhập tài khoản dịch vụ của bạn vào Jenkins

Bây giờ, bạn thêm thông tin đăng nhập của tài khoản dịch vụ gcloud CLI vào Jenkins để Jenkins có thể xác thực và chạy thành công các lệnh gcloud CLI.

  1. Trên trang tổng quan Jenkins, hãy nhấp vào Manage Jenkins (Quản lý Jenkins) rồi nhấp vào Manage Credentials (Quản lý thông tin đăng nhập).
  2. Trong phần Stores Scope to Jenkins (Cửa hàng thuộc phạm vi của Jenkins), hãy nhấp vào đường liên kết đến miền (global), rồi nhấp vào Add Credentials (Thêm thông tin xác thực).
  3. Trong trình đơn thả xuống Loại, hãy chọn Tài khoản dịch vụ của Google từ khoá riêng tư.
  4. Trong trường Tên dự án, hãy nhập tên dự án Firebase của bạn.
  5. Chọn Khoá JSON, sau đó nhấp vào Duyệt qua và duyệt qua vị trí bạn đã lưu khoá tài khoản dịch vụ.
  6. Nhấp vào Tạo.

Bây giờ, bạn đã sẵn sàng định cấu hình bản dựng tự động Jenkins cho Phòng thử nghiệm.

4. Chạy kiểm thử trong Phòng thử nghiệm với Jenkins CI

Bây giờ, bạn đã thiết lập Jenkins, hãy kết hợp mọi thứ lại với nhau và chạy cùng một chương trình kiểm thử bằng Jenkins.

Bạn có thể định cấu hình Jenkins để chạy các bản dựng tự động và chạy kiểm thử mỗi khi kiểm tra bản cập nhật cho ứng dụng của bạn. Bạn cũng có thể định cấu hình Jenkins để chạy các bản dựng theo định kỳ. Để tìm hiểu thêm về cách định cấu hình bản dựng trong Jenkins, hãy xem Định cấu hình bản dựng tự động.

Tạo và định cấu hình dự án Jenkins

Tạo một dự án để chạy kiểm thử tích hợp liên tục của ứng dụng bằng Phòng thử nghiệm.

Tạo dự án Jenkins

  1. Mở trang tổng quan Jenkins bằng cách duyệt tới http://localhost:8080.
  2. Trên trang tổng quan Jenkins, hãy nhấp vào New Item (Mục mới).
  3. Nhập tên cho dự án của bạn vào trường Tên mục, rồi nhấp vào Dự án tự do để tạo một dự án sử dụng một cấu hình bản dựng duy nhất.
  4. Nhấp vào OK. Để hoàn tất cấu hình dự án, hãy hoàn tất các phần còn lại theo trình tự.

Định cấu hình quản lý mã nguồn

  1. Trên thẻ Source Code Management (Quản lý mã nguồn), hãy chọn Git.
  2. Nhập https://github.com/android/testing-samples.git vào trường URL kho lưu trữ.

Định cấu hình môi trường tạo bản dựng

Mục Môi trường tạo bản dựng cho phép bạn định cấu hình các đặc điểm của bản dựng. Bật tính năng xác thực của Google Cloud bằng cách làm theo các bước sau:

  1. Trong thẻ Build Environment (Môi trường tạo bản dựng), hãy chọn hộp đánh dấu xác thực SDK GCloud rồi chọn tên bản cài đặt mà bạn đã chọn khi thêm thông tin cài đặt Google Cloud.
  2. Trong trình đơn thả xuống Thông tin đăng nhập Google, hãy chọn thông tin đăng nhập tài khoản dịch vụ mà bạn đã thiết lập.

Thêm các bước xây dựng Gradle để tạo lại các gói APK

  1. Di chuyển xuống phần Build (Tạo), nhấp vào Add build step (Thêm bước bản dựng), sau đó chọn Execute shell (Thực thi shell).
  2. Thêm một bước tạo bản dựng để chạy các lệnh sau trong thư mục chính cho ứng dụng của bạn:
cd ui/espresso/BasicSample/
./gradlew assembleDebug  # for generating app apk
./gradlew assembleDebugAndroidTest # for generating testing apk

Thêm một bước tạo bản dựng gcloud CLI vào Jenkins

Bây giờ, bạn đã sẵn sàng thêm một bước tạo bản dựng vào Jenkins để chạy Phòng thử nghiệm bằng dòng lệnh gcloud CLI.

Để thêm bước tạo bản dựng gcloud CLI, hãy thêm bước tạo bản dựng Execute shell mới rồi nhập lệnh sau:

gcloud config set project PROJECT_ID
gcloud firebase test android run \
--app ${WORKSPACE}/ui/espresso/BasicSample/app/build/outputs/apk/debug/app-debug.apk
--test ${WORKSPACE}/ui/espresso/BasicSample/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk

Sau khi hoàn tất quá trình thiết lập dự án, hãy di chuyển xuống cuối trang và lưu cấu hình. Bạn sẽ được chuyển hướng đến trang chủ của dự án mới.

Chạy kiểm thử bằng Jenkins

Bây giờ, bạn đã sẵn sàng xây dựng dự án Jenkins và chạy một chương trình kiểm thử như kiểm thử thủ công mà bạn đã chạy bằng gcloud CLI.

Để chạy kiểm thử với Jenkins, hãy làm theo các bước sau:

  1. Để kích hoạt bản dựng theo cách thủ công, hãy nhấp vào Build Now (Tạo ngay).
  2. Kiểm tra tiến trình và kết quả bằng cách nhấp vào bản dựng mới > Kết quả trên Play Console.

Nếu bạn không thấy lỗi thì xin chúc mừng! Bạn vừa thiết lập một dự án và chạy thử nghiệm trên thiết bị Pixel 2 chỉ bằng một lần nhấp. Nếu bạn gặp lỗi, hãy xem phần Khắc phục sự cố.

5. Các phương pháp hay nhất nâng cao để chạy các bộ kiểm thử lớn

Khi bạn muốn chạy nhiều thử nghiệm cùng lúc, hãy làm theo các phương pháp hay nhất sau đây để đảm bảo thử nghiệm của bạn chạy nhanh và đáng tin cậy.

Tăng phạm vi sử dụng trên nhiều cấu hình thiết bị

Bạn có thể dễ dàng thêm nhiều thiết bị vào bước tạo bản dựng gcloud CLI. Ngoài ra, bạn có thể kiểm tra và chọn các thiết bị, phiên bản, ngôn ngữ và hướng có sẵn. Ví dụ: lệnh sau đây chạy kiểm thử trên 2 thiết bị:

  • Một chiếc Google Pixel 2 ảo có API cấp 30 theo hướng dọc và ngôn ngữ tiếng Anh
  • Một chiếc Samsung Galaxy S20 thực với API cấp 29 theo hướng ngang và ngôn ngữ tiếng Pháp
gcloud firebase test android run \
  --type instrumentation \
  --app app-debug.apk \
  --test app-debug-test.apk \
  --device model=Pixel2,version=30,locale=en,orientation=portrait  \
  --device model=x1q,version=29,locale=fr,orientation=landscape

Sử dụng tệp cấu hình gcloud CLI YAML

Nếu muốn quản lý các đối số ở một nơi hoặc bằng hệ thống kiểm soát nguồn, bạn có thể chỉ định các đối số này trong tệp đối số có định dạng YAML. Để tìm hiểu cách sử dụng tính năng này, hãy chạy gcloud topic arg-files.

Kiểm thử phân đoạn để chạy song song

Tính năng phân đoạn kiểm thử chia một tập hợp chương trình kiểm thử thành các nhóm con (phân đoạn) chạy riêng biệt. Phòng thử nghiệm tự động chạy song song từng phân đoạn bằng cách sử dụng nhiều thiết bị, giúp Phòng thử nghiệm hoàn thành toàn bộ chương trình kiểm thử nhanh hơn. Để biết thêm thông tin, hãy xem bài viết Bật tính năng phân đoạn.

Để bật tính năng phân đoạn, hãy dùng kênh gcloud beta và thêm cờ –num-uniform-shards hoặc –test-targets-for-shard vào bước tạo bản dựng CLI của gcloud. Ví dụ: để phân đoạn các kiểm thử của bạn thành 5 lần thực thi và chạy song song, hãy chạy các lệnh sau:

gcloud beta firebase test android run \
  --type instrumentation \
  --app app-debug.apk \
  --test app-debug-test.apk \
  --num-uniform-shards 5

Bật tính năng phát hiện độ mờ

Quy trình kiểm thử trên thiết bị di động thường có thể không ổn định. Có lúc các lượt kiểm thử đạt và có lúc không thành công, ngay cả với cùng một cách thiết lập. Bạn có thể phát hiện xem quy trình kiểm thử không thành công có mã không bằng cách sử dụng cờ gcloud CLI –num-flaky-test-attempts. Cờ này chỉ định số lần thực thi lại kiểm thử nếu một hoặc nhiều trường hợp kiểm thử không thành công vì bất kỳ lý do gì.

Ví dụ: để chạy lại các trường hợp kiểm thử không thành công thêm 3 lần sau lần chạy lỗi ban đầu, hãy chỉ định như sau:

gcloud beta firebase test android run \
  --type instrumentation \
  --app app-debug.apk \
  --test app-debug-test.apk \
  --num-flaky-test-attempts 3

6. Xin chúc mừng

Xin chúc mừng! Bạn đã chạy thành công thử nghiệm đầu tiên trong Phòng thử nghiệm bằng hệ thống CI!

Bạn đã tạo các tệp APK kiểm thử và ứng dụng, đồng thời đã chạy một kiểm thử đo lường trong Phòng thử nghiệm bằng gcloud CLI. Bạn cũng cần thiết lập một dự án Jenkins để tự động hoá cùng một quy trình kiểm thử.

Bây giờ, bạn đã biết các bước quan trọng để tích hợp Phòng thử nghiệm vào hệ thống CI/CD.

Tiếp theo là gì?

Xem bài viết Cách thiết lập CI bằng Bộ mô phỏng Firebase

Tài liệu đọc thêm

Tài liệu tham khảo