Hướng dẫn này mô tả cách chuẩn bị XCTest để kiểm thử trong Firebase Test Lab.
Bước 1: Định cấu hình vị trí Dữ liệu phái sinh của dự án
Xcode đặt các cấu phần phần mềm iOS đã biên dịch, bao gồm cả mọi bài kiểm thử bạn tạo, trong một Thư mục dữ liệu. Bạn có thể giữ vị trí mặc định cho thư mục đó, nếu muốn, nhưng tốt hơn là bạn nên chọn một địa điểm dễ đi vào hơn cho các tệp, đặc biệt là khi bạn định chạy thử nghiệm với Test Lab thường xuyên:
- Mở dự án của bạn trong Xcode.
- Trong thanh trình đơn của macOS, hãy chọn Tệp > Cài đặt dự án...
- Thay đổi trình đơn thả xuống Dữ liệu có nguồn gốc từ Vị trí mặc định thành Vị trí tuỳ chỉnh.
- Trong trường bên dưới trình đơn thả xuống, hãy chọn một vị trí để Xcode xuất kết quả kiểm thử. (Đây là FOLDER_WITH_TEST_OUTPUT của bạn)
Bước 2: Tạo tệp kiểm thử chung
Test Lab chạy kiểm thử đơn vị và kiểm thử giao diện người dùng bằng khung XCTest. Để chạy XCTests của ứng dụng trên thiết bị Test Lab, hãy tạo bản dựng để kiểm thử trên Thiết bị iOS chung:
- Từ trình đơn thả xuống thiết bị ở đầu cửa sổ không gian làm việc Xcode của bạn, hãy chọn Thiết bị iOS chung.
- Trong thanh trình đơn của macOS, hãy chọn Sản phẩm > Xây dựng cho > Kiểm thử.
Thay vào đó, bạn có thể tạo XCTest từ dòng lệnh. Sử dụng lệnh sau trong thiết bị đầu cuối:
dự án
xcodebuild -project PATH/TO/YOUR_WORKSPACE/YOUR_PROJECT.xcodeproj \ -scheme YOUR_SCHEME \ -derivedDataPath FOLDER_WITH_TEST_OUTPUT \ -sdk iphoneos build-for-testing
không gian làm việc
xcodebuild -workspace PATH/TO/YOUR_WORKSPACE.xcworkspace \ -scheme YOUR_SCHEME \ -derivedDataPath FOLDER_WITH_TEST_OUTPUT \ -sdk iphoneos build-for-testing
Bước 3: Ký tên thử nghiệm và xác minh
Đảm bảo tất cả cấu phần phần mềm trong ứng dụng và hoạt động kiểm thử đều đã được ký. Ví dụ: bạn có thể thực hiện việc này thông qua Xcode bằng cách chỉ định chế độ cài đặt ký như hồ sơ cấp phép và danh tính. Để biết thêm thông tin, hãy xem Tính năng ký mã của Apple.
Xác minh chữ ký ứng dụng bằng cách chạy
codesign --verify --deep --verbose /path/to/MyApp.app
, trong đó "MyApp" là tên của ứng dụng bên trong thư mục đã giải nén. Điều này thay đổi cho từng dự án. Kết quả đầu ra dự kiến làMyApp.app: valid on disk
.Nếu đang chạy XCUITest, thì bạn cần xác minh chương trình kiểm thử và trình chạy bằng cách chạy
codesign --verify --deep --verbose /path/to/MyTest-Runner.app
trong đó "MyTest" là tên của trình chạy bên trong thư mục đã giải nén. Điều này thay đổi cho từng dự án. Kết quả dự kiến làMyTest-Runner.app: valid on disk
.
Bước 4: Đóng gói ứng dụng của bạn và thử nghiệm để tải lên
Sau khi tạo bản kiểm thử thành công, hãy nén bản kiểm thử để tải lên Test Lab:
cd FOLDER_WITH_TEST_OUTPUT/Build/Products : \ zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
Bạn cũng có thể đóng gói chương trình kiểm thử bằng cách nén tệp kiểm thử theo cách thủ công:
Mở Finder và chuyển đến
FOLDER_WITH_TEST_OUTPUT
.Mở thư mục có tiền tố là tên dự án của bạn, sau đó chuyển đến Bên trong thư mục
Build/Products
.Chọn các thư mục
Debug-iphoneos
vàYOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
rồi nén chúng.
Bước 5: (Không bắt buộc) Chạy thử nghiệm cục bộ
Trước khi chạy kiểm thử bằng Test Lab, bạn có thể chạy kiểm thử cục bộ bằng một thiết bị đã kết nối USB để kiểm tra chất lượng hoạt động của thiết bị:
xcodebuild test-without-building \ -xctestrun "Derived Data/Build/Products/YOUR_SCHEME.xctestrun" \ -destination id=your-phone-id
Các bước tiếp theo
Tải lên và chạy kiểm thử trong bảng điều khiển Firebase hoặc gcloud CLI.