- Tài nguyên: TestMatrix
- Thông tin khách hàng
- Thông tin khách hàngChi tiết
- Đặc điểm kỹ thuật kiểm tra
- Cài đặt thử nghiệm
- Tệp thiết bị
- ObbFile
- Tham chiếu tập tin
- Tệp thông thường
- Apk
- Tài khoản
- GoogleAuto
- Môi trườngBiến
- SystraceThiết lập
- Thiết lập thử nghiệm Ios
- Tệp thiết bị Ios
- AndroidThiết bị kiểm tra
- AppBundle
- Tùy chọn soạn nhạc
- Tùy chọn phân mảnh
- Đồng phụcSharding
- Bảo vệ thủ công
- TestTargetForShard
- SmartSharding
- AndroidRoboThử nghiệm
- Chỉ thị Robo
- RoboHành động Loại
- chế độ robot
- RoboBắt đầuÝ định
- Trình khởi chạyHoạt độngÝ định
- Bắt đầuHoạt độngÝ định
- AndroidTestLoop
- Kiểm tra iOSXc
- IosTestLoop
- Môi TrườngMa Trận
- Ma Trận Android
- Danh sách thiết bị Android
- Thiết bị Android
- Danh sách thiết bị Ios
- Thiết Bị Ios
- Thực hiện kiểm tra
- Mảnh vỡ
- Môi trường
- Trạng thái kiểm tra
- Công cụKết quảBước
- Chi tiết kiểm tra
- Lưu trữ kết quả
- Lưu trữ đám mây của Google
- Công cụKết quảLịch sử
- Công cụKết quảThực thi
- Chi tiết ma trận không hợp lệ
- Kết quảTóm tắt
- phương pháp
Tài nguyên: TestMatrix
TestMatrix nắm bắt tất cả thông tin chi tiết về một bài kiểm tra. Nó chứa cấu hình môi trường, đặc tả kiểm thử, thực hiện kiểm thử cũng như trạng thái và kết quả tổng thể.
Biểu diễn JSON |
---|
{ "testMatrixId": string, "projectId": string, "clientInfo": { object ( |
Lĩnh vực | |
---|---|
testMatrixId | Chỉ đầu ra. Id duy nhất được đặt bởi dịch vụ. |
projectId | Dự án đám mây sở hữu ma trận thử nghiệm. |
clientInfo | Thông tin về khách hàng đã gọi thử nghiệm. |
testSpecification | Yêu cầu. Cách chạy thử nghiệm. |
environmentMatrix | Yêu cầu. Các thiết bị mà bài kiểm tra đang được thực hiện. |
testExecutions[] | Chỉ đầu ra. Danh sách thực hiện kiểm tra mà dịch vụ tạo cho ma trận này. |
resultStorage | Yêu cầu. Nơi kết quả của ma trận được viết. |
state | Chỉ đầu ra. Cho biết tiến trình hiện tại của ma trận thử nghiệm. |
timestamp | Chỉ đầu ra. Thời gian ma trận thử nghiệm này được tạo lần đầu. Dấu thời gian ở định dạng RFC3339 UTC "Zulu", với độ phân giải nano giây và tối đa chín chữ số phân số. Ví dụ: |
invalidMatrixDetails | Chỉ đầu ra. Mô tả lý do tại sao ma trận được coi là không hợp lệ. Chỉ hữu ích cho ma trận ở trạng thái KHÔNG HỢP LỆ. |
flakyTestAttempts | Số lần TestExecution phải được thử lại nếu một hoặc nhiều trường hợp thử nghiệm của nó không thành công vì bất kỳ lý do gì. Số lần phát lại tối đa được phép là 10. Mặc định là 0, nghĩa là không được chạy lại. |
outcomeSummary | Chỉ đầu ra. Kết quả chung cuộc của bài kiểm tra. Chỉ được đặt khi trạng thái ma trận kiểm tra là HOÀN THÀNH. |
failFast | Nếu đúng, chỉ một lần thử tối đa sẽ được thực hiện để chạy mỗi lần thực thi/phân đoạn trong ma trận. Những lần thử nghiệm không ổn định sẽ không bị ảnh hưởng. Thông thường, 2 lần thử trở lên sẽ được thực hiện nếu phát hiện thấy sự cố tiềm ẩn về cơ sở hạ tầng. Tính năng này dành cho khối lượng công việc nhạy cảm với độ trễ. Tỷ lệ lỗi thực thi có thể lớn hơn đáng kể đối với các ma trận không nhanh và khả năng hỗ trợ bị hạn chế hơn do kỳ vọng đó. |
Thông tin khách hàng
Thông tin về khách hàng đã gọi thử nghiệm.
Biểu diễn JSON |
---|
{
"name": string,
"clientInfoDetails": [
{
object ( |
Lĩnh vực | |
---|---|
name | Yêu cầu. Tên khách hàng, chẳng hạn như gcloud. |
clientInfoDetails[] | Danh sách thông tin chi tiết về khách hàng. |
Thông tin khách hàngChi tiết
Cặp khóa-giá trị của thông tin chi tiết về máy khách đã gọi thử nghiệm. Ví dụ: {'Phiên bản', '1.0'}, {'Bản phát hành', 'BETA'}.
Biểu diễn JSON |
---|
{ "key": string, "value": string } |
Lĩnh vực | |
---|---|
key | Yêu cầu. Chìa khóa thông tin chi tiết của khách hàng. |
value | Yêu cầu. Giá trị của thông tin khách hàng chi tiết. |
Đặc điểm kỹ thuật kiểm tra
Mô tả về cách chạy thử nghiệm.
Biểu diễn JSON |
---|
{ "testTimeout": string, "disableVideoRecording": boolean, "disablePerformanceMetrics": boolean, // Union field |
Lĩnh vực | |
---|---|
testTimeout | Thời gian tối đa cho phép thực hiện kiểm thử trước khi nó tự động bị hủy. Giá trị mặc định là 5 phút. Khoảng thời gian tính bằng giây với tối đa chín chữ số phân số, kết thúc bằng ' |
disableVideoRecording | Vô hiệu hóa quay video. Có thể giảm độ trễ kiểm tra. |
disablePerformanceMetrics | Tắt tính năng ghi số liệu hiệu suất. Có thể giảm độ trễ kiểm tra. |
setup trường liên minh. Yêu cầu thiết lập thử nghiệm. setup chỉ có thể là một trong những điều sau đây: | |
testSetup | Kiểm tra các yêu cầu thiết lập cho Android, ví dụ: tệp cần cài đặt, tập lệnh khởi động. |
iosTestSetup | Kiểm tra yêu cầu thiết lập cho iOS. |
Liên minh lĩnh vực test . Yêu cầu. Loại thử nghiệm để chạy. test chỉ có thể là một trong những điều sau đây: | |
androidInstrumentationTest | Một thử nghiệm thiết bị Android. |
androidRoboTest | Một thử nghiệm robot Android. |
androidTestLoop | Một ứng dụng Android có vòng lặp thử nghiệm. |
iosXcTest | XCTest iOS, thông qua tệp .xctestrun. |
iosTestLoop | Một ứng dụng iOS có vòng lặp thử nghiệm. |
Cài đặt thử nghiệm
Mô tả về cách thiết lập thiết bị Android trước khi chạy thử nghiệm.
Biểu diễn JSON |
---|
{ "filesToPush": [ { object ( |
Lĩnh vực | |
---|---|
filesToPush[] | Danh sách các file cần đẩy vào thiết bị trước khi bắt đầu kiểm tra. |
directoriesToPull[] | Danh sách các thư mục trên thiết bị để tải lên GCS khi kết thúc bài thi; chúng phải là đường dẫn tuyệt đối trong/sdcard,/storage hoặc/data/local/tmp. Tên đường dẫn bị giới hạn ở các ký tự az AZ 0-9 _ - . + và / Lưu ý: Các đường dẫn /sdcard và /data sẽ được cung cấp và được coi là các đường dẫn thay thế ngầm định. Ví dụ: nếu /sdcard trên một thiết bị cụ thể không ánh xạ tới bộ nhớ ngoài, hệ thống sẽ thay thế nó bằng tiền tố đường dẫn bộ nhớ ngoài cho thiết bị đó. |
additionalApks[] | Các APK để cài đặt ngoài những APK đang được thử nghiệm trực tiếp. Hiện tại giới hạn ở mức 100. |
account | Thiết bị sẽ đăng nhập vào tài khoản này trong suốt thời gian thử nghiệm. |
networkProfile | Cấu hình lưu lượng truy cập mạng được sử dụng để chạy thử nghiệm. Có thể truy vấn các cấu hình mạng khả dụng bằng cách sử dụng loại môi trường NETWORK_CONFIGUration khi gọi TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog. |
environmentVariables[] | Các biến môi trường cần đặt cho thử nghiệm (chỉ áp dụng cho thử nghiệm thiết bị đo đạc). |
systrace | Cấu hình Systrace để chạy. Không được dùng nữa: Systrace đã sử dụng Python 2 đã ngừng hoạt động vào ngày 01/01/2020. Systrace không còn được hỗ trợ trong API kiểm tra đám mây nữa và sẽ không có tệp Systrace nào được cung cấp trong kết quả. |
dontAutograntPermissions | Có ngăn chặn việc cấp tất cả các quyền trong thời gian chạy khi cài đặt ứng dụng hay không |
Tệp thiết bị
Một mô tả tập tin thiết bị duy nhất.
Biểu diễn JSON |
---|
{ // Union field |
Lĩnh vực | |
---|---|
Trường liên kết device_file . Yêu cầu. device_file chỉ có thể là một trong những thứ sau: | |
obbFile | Tham chiếu đến tệp blob nhị phân mờ đục. |
regularFile | Một tham chiếu đến một tập tin thông thường. |
ObbFile
Tệp blob nhị phân mờ để cài đặt trên thiết bị trước khi bắt đầu thử nghiệm.
Biểu diễn JSON |
---|
{
"obbFileName": string,
"obb": {
object ( |
Lĩnh vực | |
---|---|
obbFileName | Yêu cầu. Tên tệp OBB phải tuân theo định dạng do Android chỉ định, ví dụ: [main|patch].0300110.com.example.android.obb sẽ được cài đặt vào <shared-storage>/Android/obb/<package-name>/ trên thiết bị. |
obb | Yêu cầu. (Các) tệp Blob nhị phân mờ (OBB) để cài đặt trên thiết bị. |
Tham chiếu tập tin
Một tham chiếu đến một tập tin, được sử dụng cho đầu vào của người dùng.
Biểu diễn JSON |
---|
{ // Union field |
Lĩnh vực | |
---|---|
file trường Union . Yêu cầu. Tham chiếu tập tin. file chỉ có thể là một trong những điều sau đây: | |
gcsPath | Đường dẫn đến tệp trong Google Cloud Storage. Ví dụ: gs://build-app-1414623860166/app%40debug-unaligned.apk Những đường dẫn này dự kiến sẽ được mã hóa url (mã hóa phần trăm) |
Tệp thông thường
Một tập tin hoặc thư mục để cài đặt trên thiết bị trước khi bắt đầu thử nghiệm.
Biểu diễn JSON |
---|
{
"content": {
object ( |
Lĩnh vực | |
---|---|
content | Yêu cầu. Tệp nguồn. |
devicePath | Yêu cầu. Nơi để đưa nội dung trên thiết bị. Phải là đường dẫn tuyệt đối, có trong danh sách cho phép. Nếu tập tin tồn tại, nó sẽ được thay thế. Các thư mục phía thiết bị sau đây và bất kỳ thư mục con nào của chúng đều được đưa vào danh sách cho phép: ${EXTERNAL_STORAGE}, /sdcard hoặc /storage ${ANDROID_DATA}/local/tmp hoặc /data/local/tmp Việc chỉ định đường dẫn bên ngoài các cây thư mục này là không hợp lệ. Các đường dẫn /sdcard và /data sẽ được cung cấp và được coi là các đường dẫn thay thế ngầm định. Ví dụ: nếu /sdcard trên một thiết bị cụ thể không ánh xạ tới bộ nhớ ngoài, hệ thống sẽ thay thế nó bằng tiền tố đường dẫn bộ nhớ ngoài cho thiết bị đó và sao chép tệp vào đó. Chúng tôi khuyên bạn nên sử dụng API môi trường trong ứng dụng và mã kiểm tra để truy cập các tệp trên thiết bị theo cách di động. |
Apk
Một tệp gói Android để cài đặt.
Biểu diễn JSON |
---|
{
"location": {
object ( |
Lĩnh vực | |
---|---|
location | Đường dẫn đến APK sẽ được cài đặt trên thiết bị trước khi bắt đầu thử nghiệm. |
packageName | Gói java để cài đặt APK. Giá trị được xác định bằng cách kiểm tra bảng kê khai của ứng dụng. |
Tài khoản
Xác định một tài khoản và cách đăng nhập vào nó.
Biểu diễn JSON |
---|
{ // Union field |
Lĩnh vực | |
---|---|
Trường liên minh account_type . Yêu cầu. Loại tài khoản, dựa trên mục đích sử dụng (ví dụ: Google) và cơ chế đăng nhập của tài khoản đó (ví dụ: tên người dùng và mật khẩu). account_type chỉ có thể là một trong những loại sau: | |
googleAuto | Một tài khoản đăng nhập google tự động. |
GoogleAuto
Cho phép đăng nhập tài khoản Google tự động. Nếu được đặt, dịch vụ sẽ tự động tạo tài khoản thử nghiệm của Google và thêm tài khoản đó vào thiết bị trước khi thực hiện thử nghiệm. Lưu ý rằng tài khoản thử nghiệm có thể được sử dụng lại. Nhiều ứng dụng hiển thị đầy đủ các chức năng khi có tài khoản trên thiết bị. Đăng nhập vào thiết bị bằng các tài khoản được tạo này cho phép thử nghiệm nhiều chức năng hơn.
Môi trườngBiến
Một cặp khóa-giá trị được chuyển dưới dạng biến môi trường cho thử nghiệm.
Biểu diễn JSON |
---|
{ "key": string, "value": string } |
Lĩnh vực | |
---|---|
key | Khóa cho biến môi trường. |
value | Giá trị cho biến môi trường. |
SystraceThiết lập
Biểu diễn JSON |
---|
{ "durationSeconds": integer } |
Lĩnh vực | |
---|---|
durationSeconds | Thời lượng Systrace tính bằng giây. Nên từ 1 đến 30 giây. 0 vô hiệu hóa systrace. |
Thiết lập thử nghiệm Ios
Mô tả về cách thiết lập thiết bị iOS trước khi chạy thử nghiệm.
Biểu diễn JSON |
---|
{ "networkProfile": string, "additionalIpas": [ { object ( |
Lĩnh vực | |
---|---|
networkProfile | Cấu hình lưu lượng truy cập mạng được sử dụng để chạy thử nghiệm. Có thể truy vấn các cấu hình mạng khả dụng bằng cách sử dụng loại môi trường NETWORK_CONFIGUration khi gọi TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog. |
additionalIpas[] | Các ứng dụng iOS cần cài đặt ngoài những ứng dụng đang được thử nghiệm trực tiếp. |
pushFiles[] | Danh sách các file cần đẩy vào thiết bị trước khi bắt đầu kiểm tra. |
pullDirectories[] | Danh sách các thư mục trên thiết bị để tải lên Cloud Storage khi kết thúc bài kiểm tra. Các thư mục phải nằm trong thư mục dùng chung (chẳng hạn như /private/var/mobile/Media) hoặc trong thư mục có thể truy cập bên trong hệ thống tệp của ứng dụng (chẳng hạn như /Documents) bằng cách chỉ định ID gói. |
Tệp thiết bị Ios
Một tập tin hoặc thư mục để cài đặt trên thiết bị trước khi bắt đầu thử nghiệm.
Biểu diễn JSON |
---|
{
"content": {
object ( |
Lĩnh vực | |
---|---|
content | Tệp nguồn |
bundleId | Id gói của ứng dụng chứa tệp này. Ứng dụng iOS sandbox hệ thống tệp riêng của chúng, vì vậy các tệp ứng dụng phải chỉ định ứng dụng nào được cài đặt trên thiết bị. |
devicePath | Vị trí của tệp trên thiết bị, bên trong hệ thống tệp được đóng hộp cát của ứng dụng |
AndroidThiết bị kiểm tra
Thử nghiệm một ứng dụng Android có thể điều khiển một thành phần Android độc lập với vòng đời thông thường của nó. Kiểm thử thiết bị Android chạy APK ứng dụng và APK kiểm thử trong cùng một quy trình trên Thiết bị Android ảo hoặc vật lý. Họ cũng chỉ định một lớp chạy thử nghiệm, chẳng hạn như com.google.GoogleTestRunner, lớp này có thể khác nhau tùy theo khung công cụ cụ thể được chọn.
Xem https://developer.android.com/training/testing/fundamentals để biết thêm thông tin về các loại thử nghiệm Android.
Biểu diễn JSON |
---|
{ "testApk": { object ( |
Lĩnh vực | |
---|---|
testApk | Yêu cầu. APK chứa mã kiểm tra sẽ được thực thi. |
appPackageId | Gói java cho ứng dụng đang được thử nghiệm. Giá trị mặc định được xác định bằng cách kiểm tra bảng kê khai của ứng dụng. |
testPackageId | Gói java để thực thi bài kiểm tra. Giá trị mặc định được xác định bằng cách kiểm tra bảng kê khai của ứng dụng. |
testRunnerClass | Lớp InstrumentationTestRunner. Giá trị mặc định được xác định bằng cách kiểm tra bảng kê khai của ứng dụng. |
testTargets[] | Mỗi mục tiêu phải đủ điều kiện với tên gói hoặc tên lớp, theo một trong các định dạng sau:
Nếu trống, tất cả mục tiêu trong mô-đun sẽ được chạy. |
orchestratorOption | Tùy chọn có chạy từng thử nghiệm trong lệnh gọi công cụ riêng của nó với Android Test Orchestrator hay không. ** Orchestrator chỉ tương thích với AndroidJUnitRunner phiên bản 1.1 trở lên! ** Người soạn nhạc cung cấp các lợi ích sau:
Xem https://developer.android.com/training/testing/junit-runner.html#using-android-test-orchestrator để biết thêm thông tin về Android Test Orchestrator. Nếu không được đặt, bài kiểm tra sẽ được chạy mà không có người điều phối. |
shardingOption | Tùy chọn chạy thử nghiệm song song trên nhiều phân đoạn. |
Trường liên minh app_under_test . Yêu cầu. app_under_test chỉ có thể là một trong những điều sau đây: | |
appApk | APK cho ứng dụng đang được thử nghiệm. |
appBundle | Gói ứng dụng nhiều apk cho ứng dụng đang được thử nghiệm. |
AppBundle
Định dạng tệp Android App Bundle, chứa tệp BundleConfig.pb, thư mục mô-đun cơ sở, không có hoặc nhiều thư mục mô-đun tính năng động.
Xem https://developer.android.com/guide/app-bundle/build để được hướng dẫn cách xây dựng Gói ứng dụng.
Biểu diễn JSON |
---|
{ // Union field |
Lĩnh vực | |
---|---|
bundle lĩnh vực liên minh. Yêu cầu. Gói thông tin vị trí. bundle chỉ có thể là một trong những điều sau đây: | |
bundleLocation | Tệp .aab đại diện cho gói ứng dụng đang được thử nghiệm. |
Tùy chọn soạn nhạc
Chỉ định cách thực hiện thử nghiệm.
Enum | |
---|---|
ORCHESTRATOR_OPTION_UNSPECIFIED | Giá trị mặc định: máy chủ sẽ chọn chế độ. Hiện tại ngụ ý rằng thử nghiệm sẽ chạy mà không có người điều phối. Trong tương lai, tất cả các bài kiểm tra thiết bị đo đạc sẽ được chạy bằng bộ điều phối. Việc sử dụng bộ điều phối rất được khuyến khích vì tất cả những lợi ích mà nó mang lại. |
USE_ORCHESTRATOR | Chạy thử nghiệm bằng cách sử dụng bộ điều phối. ** Chỉ tương thích với AndroidJUnitRunner phiên bản 1.1 trở lên! ** Khuyến khích. |
DO_NOT_USE_ORCHESTRATOR | Chạy thử nghiệm mà không sử dụng bộ điều phối. |
Tùy chọn phân mảnh
Các tùy chọn để kích hoạt sharding.
Biểu diễn JSON |
---|
{ // Union field |
Lĩnh vực | |
---|---|
| |
uniformSharding | Các trường hợp thử nghiệm phân đoạn thống nhất cho tổng số phân đoạn. |
manualSharding | Phân chia các trường hợp kiểm thử thành các nhóm gói, lớp và/hoặc phương thức được chỉ định. |
smartSharding | Kiểm tra phân đoạn dựa trên bản ghi thời gian của trường hợp kiểm thử trước đó. |
Đồng phụcSharding
Các trường hợp thử nghiệm phân đoạn thống nhất cho tổng số phân đoạn.
Đối với các thử nghiệm đo lường, nó sẽ được dịch sang các đối số AndroidJUnitRunner "-e numShard" và "-e shardIndex". Khi bật tính năng phân chia đồng nhất, việc chỉ định một trong hai đối số phân chia này thông qua environmentVariables
là không hợp lệ.
Dựa trên cơ chế phân đoạn mà AndroidJUnitRunner sử dụng, không có gì đảm bảo rằng các trường hợp thử nghiệm sẽ được phân phối đồng đều trên tất cả các phân đoạn.
Biểu diễn JSON |
---|
{ "numShards": integer } |
Lĩnh vực | |
---|---|
numShards | Yêu cầu. Tổng số phân đoạn cần tạo. Đây phải luôn là số dương và không lớn hơn tổng số trường hợp thử nghiệm. Khi bạn chọn một hoặc nhiều thiết bị vật lý thì số lượng phân đoạn phải là <= 50. Khi bạn chọn một hoặc nhiều thiết bị ảo ARM thì phải là <= 200. Khi bạn chỉ chọn thiết bị ảo x86 thì phải là <= 500 . |
Bảo vệ thủ công
Phân chia các trường hợp kiểm thử thành các nhóm gói, lớp và/hoặc phương thức được chỉ định.
Khi bật tính năng phân đoạn thủ công, việc chỉ định mục tiêu thử nghiệm thông qua biến môi trường hoặc trong InstrumentationTest là không hợp lệ.
Biểu diễn JSON |
---|
{
"testTargetsForShard": [
{
object ( |
Lĩnh vực | |
---|---|
testTargetsForShard[] | Yêu cầu. Nhóm các gói, lớp và/hoặc phương thức thử nghiệm sẽ được chạy cho từng phân đoạn được tạo thủ công. Bạn phải chỉ định ít nhất một phân đoạn nếu có trường này. Khi bạn chọn một hoặc nhiều thiết bị vật lý, số lượng testTargetsForShard lặp lại phải là <= 50. Khi bạn chọn một hoặc nhiều thiết bị ảo ARM, số lượng đó phải là <= 200. Khi bạn chỉ chọn thiết bị ảo x86 thì phải là <= 500. |
TestTargetForShard
Kiểm tra mục tiêu cho một mảnh vỡ.
Biểu diễn JSON |
---|
{ "testTargets": [ string ] } |
Lĩnh vực | |
---|---|
testTargets[] | Nhóm các gói, lớp và/hoặc phương thức thử nghiệm sẽ được chạy cho từng phân đoạn. Các mục tiêu cần phải được chỉ định ở định dạng đối số AndroidJUnitRunner. Ví dụ: "gói com.my.packages" "lớp com.my.package.MyClass". Số lượng TestTarget phải lớn hơn 0. |
SmartSharding
Kiểm tra phân đoạn dựa trên bản ghi thời gian của trường hợp kiểm thử trước đó.
Biểu diễn JSON |
---|
{ "targetedShardDuration": string } |
Lĩnh vực | |
---|---|
targetedShardDuration | Lượng thời gian kiểm tra trong một phân đoạn sẽ mất. Mặc định: 300 giây (5 phút). Tối thiểu cho phép: 120 giây (2 phút). Số lượng phân đoạn được đặt động dựa trên thời gian, lên đến giới hạn phân đoạn tối đa (được mô tả bên dưới). Để đảm bảo có ít nhất một trường hợp thử nghiệm cho mỗi phân đoạn, số lượng phân đoạn sẽ không vượt quá số lượng trường hợp thử nghiệm. Thời lượng phân đoạn sẽ bị vượt quá nếu:
Thời lượng của phân đoạn không được đảm bảo vì phân đoạn thông minh sử dụng lịch sử trường hợp thử nghiệm và thời lượng mặc định có thể không chính xác. Các quy tắc để tìm bản ghi thời gian của trường hợp kiểm thử là:
Vì thời lượng phân đoạn thực tế có thể vượt quá thời lượng phân đoạn được nhắm mục tiêu nên chúng tôi khuyên bạn nên đặt giá trị mục tiêu ít hơn ít nhất 5 phút so với thời gian chờ thử nghiệm tối đa được phép (45 phút cho thiết bị vật lý và 60 phút cho thiết bị ảo) hoặc bạn sử dụng tùy chỉnh kiểm tra giá trị thời gian chờ mà bạn đặt. Cách tiếp cận này tránh việc hủy phân đoạn trước khi tất cả các thử nghiệm có thể kết thúc. Lưu ý rằng có giới hạn về số lượng phân đoạn tối đa. Khi bạn chọn một hoặc nhiều thiết bị vật lý thì số lượng phân đoạn phải là <= 50. Khi bạn chọn một hoặc nhiều thiết bị ảo ARM thì phải là <= 200. Khi bạn chỉ chọn thiết bị ảo x86 thì phải là <= 500 Để đảm bảo có ít nhất một test case cho mỗi shard, số lượng shard sẽ không vượt quá số lượng test case. Mỗi phân đoạn được tạo sẽ được tính vào hạn ngạch thử nghiệm hàng ngày. Khoảng thời gian tính bằng giây với tối đa chín chữ số phân số, kết thúc bằng ' |
AndroidRoboThử nghiệm
Thử nghiệm ứng dụng Android khám phá ứng dụng trên Thiết bị Android ảo hoặc vật lý, tìm ra thủ phạm và gặp sự cố khi ứng dụng hoạt động.
Biểu diễn JSON |
---|
{ "appPackageId": string, "appInitialActivity": string, "maxDepth": integer, "maxSteps": integer, "roboDirectives": [ { object ( |
Lĩnh vực | |
---|---|
appPackageId | Gói java cho ứng dụng đang được thử nghiệm. Giá trị mặc định được xác định bằng cách kiểm tra bảng kê khai của ứng dụng. |
appInitialActivity | Hoạt động ban đầu sẽ được sử dụng để khởi động ứng dụng. |
maxDepth | Độ sâu tối đa của ngăn xếp truyền tải mà Robo có thể khám phá. Cần có ít nhất 2 người để Robo khám phá ứng dụng ngoài hoạt động đầu tiên. Mặc định là 50. |
maxSteps | Số bước tối đa Robo có thể thực hiện. Mặc định là không có giới hạn. |
roboDirectives[] | Một bộ chỉ thị mà Robo phải áp dụng trong quá trình thu thập thông tin. Điều này cho phép người dùng tùy chỉnh thu thập thông tin. Ví dụ: tên người dùng và mật khẩu cho tài khoản thử nghiệm có thể được cung cấp. |
roboMode | Chế độ mà Robo sẽ chạy. Hầu hết khách hàng nên cho phép máy chủ tự động điền trường này. |
roboScript | Tệp JSON có chuỗi hành động mà Robo sẽ thực hiện như phần mở đầu cho quá trình thu thập thông tin. |
startingIntents[] | Ý định dùng để khởi chạy ứng dụng để thu thập thông tin. Nếu không được cung cấp thì hoạt động của trình khởi chạy chính sẽ được khởi chạy. Nếu một số được cung cấp thì chỉ những thứ được cung cấp mới được khởi chạy (hoạt động của trình khởi chạy chính phải được cung cấp rõ ràng). |
Trường liên minh app_under_test . Yêu cầu. app_under_test chỉ có thể là một trong những điều sau đây: | |
appApk | APK cho ứng dụng đang được thử nghiệm. |
appBundle | Gói ứng dụng nhiều apk cho ứng dụng đang được thử nghiệm. |
Chỉ thị Robo
Hướng dẫn Robo tương tác với một thành phần giao diện người dùng cụ thể nếu nó gặp phải trong quá trình thu thập thông tin. Hiện tại, Robo có thể thực hiện nhập văn bản hoặc nhấp chuột vào phần tử.
Biểu diễn JSON |
---|
{
"resourceName": string,
"inputText": string,
"actionType": enum ( |
Lĩnh vực | |
---|---|
resourceName | Yêu cầu. Tên tài nguyên Android của thành phần giao diện người dùng mục tiêu. Ví dụ: trong Java: R.string.foo trong xml: @string/foo Chỉ cần phần "foo". Tài liệu tham khảo: https://developer.android.com/guide/topics/resources/accessing-resources.html |
inputText | Văn bản mà Robo được hướng tới thiết lập. Nếu để trống, lệnh này sẽ được coi là một CLICK trên phần tử khớp với Tên tài nguyên. |
actionType | Yêu cầu. Loại hành động mà Robo sẽ thực hiện trên phần tử được chỉ định. |
RoboHành động Loại
Các hành động mà Robo có thể thực hiện trên các thành phần giao diện người dùng.
Enum | |
---|---|
ACTION_TYPE_UNSPECIFIED | KHÔNG ĐƯỢC DÙNG. Chỉ dành cho phiên bản proto. |
SINGLE_CLICK | Trực tiếp Robo để nhấp vào phần tử được chỉ định. Không hoạt động nếu phần tử được chỉ định không thể nhấp được. |
ENTER_TEXT | Trực tiếp Robo để nhập văn bản trên phần tử được chỉ định. Không hoạt động nếu phần tử được chỉ định không được bật hoặc không cho phép nhập văn bản. |
IGNORE | Chỉ đạo Robo bỏ qua các tương tác với một phần tử cụ thể. |
chế độ robot
Chế độ mà Robo sẽ chạy.
Enum | |
---|---|
ROBO_MODE_UNSPECIFIED | Điều này có nghĩa là máy chủ nên chọn chế độ. Khuyến khích. |
ROBO_VERSION_1 | Chạy Robo ở chế độ chỉ UIAutomator mà không cần thoát ứng dụng |
ROBO_VERSION_2 | Chạy Robo trong Espresso tiêu chuẩn với dự phòng UIAutomator |
RoboBắt đầuÝ định
Thông báo chỉ định các hoạt động bắt đầu thu thập thông tin.
Biểu diễn JSON |
---|
{ "timeout": string, // Union field |
Lĩnh vực | |
---|---|
timeout | Thời gian chờ tính bằng giây cho mỗi ý định. Khoảng thời gian tính bằng giây với tối đa chín chữ số phân số, kết thúc bằng ' |
Trường liên minh starting_intent . Yêu cầu. Chi tiết ý định để bắt đầu một hoạt động. starting_intent chỉ có thể là một trong những điều sau đây: | |
launcherActivity | Một ý định bắt đầu hoạt động của trình khởi chạy chính. |
startActivity | Ý định bắt đầu một hoạt động với các chi tiết cụ thể. |
Trình khởi chạyHoạt độngÝ định
Chỉ định ý định bắt đầu hoạt động của trình khởi chạy chính.
Bắt đầuHoạt độngÝ định
Mục đích bắt đầu được chỉ định bởi một hành động, uri và danh mục.
Biểu diễn JSON |
---|
{ "action": string, "uri": string, "categories": [ string ] } |
Lĩnh vực | |
---|---|
action | Tên hành động. Bắt buộc đối với START_ACTIVITY. |
uri | URI cho hành động. |
categories[] | Các danh mục ý định để đặt theo ý định. |
AndroidTestLoop
Thử nghiệm Ứng dụng Android bằng Vòng lặp thử nghiệm. Ý định <intent-name> sẽ được ngầm thêm vào vì Games là người dùng duy nhất của api này vào thời điểm hiện tại.
Biểu diễn JSON |
---|
{ "appPackageId": string, "scenarios": [ integer ], "scenarioLabels": [ string ], // Union field |
Lĩnh vực | |
---|---|
appPackageId | Gói java cho ứng dụng đang được thử nghiệm. Giá trị mặc định được xác định bằng cách kiểm tra bảng kê khai của ứng dụng. |
scenarios[] | Danh sách các kịch bản sẽ được chạy trong quá trình thử nghiệm. Giá trị mặc định là tất cả các vòng lặp kiểm tra, bắt nguồn từ bảng kê khai của ứng dụng. |
scenarioLabels[] | Danh sách các nhãn kịch bản sẽ được chạy trong quá trình thử nghiệm. Các nhãn kịch bản sẽ ánh xạ tới các nhãn được xác định trong tệp kê khai của ứng dụng. Ví dụ: player_experience và com.google.test.loops.player_experience thêm tất cả các vòng lặp được gắn nhãn trong tệp kê khai có tên com.google.test.loops.player_experience vào quá trình thực thi. Các kịch bản cũng có thể được chỉ định trong trường kịch bản. |
Trường liên minh app_under_test . Yêu cầu. Gói Android để thử nghiệm. app_under_test chỉ có thể là một trong những điều sau đây: | |
appApk | APK cho ứng dụng đang được thử nghiệm. |
appBundle | Gói ứng dụng nhiều apk cho ứng dụng đang được thử nghiệm. |
Kiểm tra iOSXc
Thử nghiệm ứng dụng iOS sử dụng khung XCTest. Xcode hỗ trợ tùy chọn "xây dựng để thử nghiệm", tạo ra tệp .xctestrun chứa thông số kiểm tra (đối số, phương pháp kiểm tra, v.v.). Loại thử nghiệm này chấp nhận tệp zip chứa tệp .xctestrun và nội dung tương ứng của thư mục Build/Products chứa tất cả các tệp nhị phân cần thiết để chạy thử nghiệm.
Biểu diễn JSON |
---|
{ "testsZip": { object ( |
Lĩnh vực | |
---|---|
testsZip | Yêu cầu. Tệp .zip chứa tệp .xctestrun và nội dung của thư mục DerivedData/Build/Products. Tệp .xctestrun trong zip này bị bỏ qua nếu trường xctestrun được chỉ định. |
xctestrun | Tệp .xctestrun sẽ ghi đè tệp .xctestrun trong zip thử nghiệm. Vì tệp .xctestrun chứa các biến môi trường cùng với các phương thức kiểm tra để chạy và/hoặc bỏ qua, nên điều này có thể hữu ích cho các kiểm tra phân mảnh. Mặc định được lấy từ zip kiểm tra. |
xcodeVersion | Phiên bản Xcode nên được sử dụng để thử nghiệm. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. Mặc định là phiên bản Xcode mới nhất mà Firebase Test Lab hỗ trợ. |
appBundleId | Chỉ đầu ra. Id gói cho ứng dụng đang được thử nghiệm. |
testSpecialEntitlements | Tùy chọn để kiểm tra các quyền ứng dụng đặc biệt. Cài đặt này sẽ ký lại ứng dụng có các quyền đặc biệt với mã nhận dạng ứng dụng rõ ràng. Hiện hỗ trợ thử nghiệm quyền trong môi trường aps. |
IosTestLoop
Bản thử nghiệm ứng dụng iOS triển khai một hoặc nhiều kịch bản vòng lặp trò chơi. Loại thử nghiệm này chấp nhận một ứng dụng được lưu trữ (tệp .ipa) và danh sách các kịch bản số nguyên sẽ được thực thi tuần tự trên ứng dụng.
Biểu diễn JSON |
---|
{
"appIpa": {
object ( |
Lĩnh vực | |
---|---|
appIpa | Yêu cầu. .ipa của ứng dụng cần kiểm tra. |
scenarios[] | Danh sách các kịch bản sẽ được chạy trong quá trình thử nghiệm. Mặc định cho kịch bản duy nhất 0 nếu không được chỉ định. |
appBundleId | Chỉ đầu ra. Id gói cho ứng dụng đang được thử nghiệm. |
Môi TrườngMa Trận
Ma trận các môi trường mà thử nghiệm sẽ được thực hiện.
Biểu diễn JSON |
---|
{ // Union field |
Lĩnh vực | |
---|---|
Trường liên minh environment_matrix . Yêu cầu. Ma trận môi trường. environment_matrix chỉ có thể là một trong những điều sau đây: | |
androidMatrix | Một ma trận các thiết bị Android. |
androidDeviceList | Danh sách các thiết bị Android; bài kiểm tra sẽ chỉ được chạy trên các thiết bị được chỉ định. |
iosDeviceList | Danh sách các thiết bị iOS. |
Ma Trận Android
Một tập hợp các hoán vị cấu hình thiết bị Android được xác định bằng tích chéo của các trục đã cho. Trong nội bộ, AndroidMatrix đã cho sẽ được mở rộng thành một tập hợp các Thiết bị Android.
Chỉ những hoán vị được hỗ trợ mới được khởi tạo. Các hoán vị không hợp lệ (ví dụ: kiểu máy/phiên bản không tương thích) sẽ bị bỏ qua.
Biểu diễn JSON |
---|
{ "androidModelIds": [ string ], "androidVersionIds": [ string ], "locales": [ string ], "orientations": [ string ] } |
Lĩnh vực | |
---|---|
androidModelIds[] | Yêu cầu. Id của nhóm thiết bị Android sẽ được sử dụng. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
androidVersionIds[] | Yêu cầu. Id của tập hợp phiên bản hệ điều hành Android sẽ được sử dụng. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
locales[] | Yêu cầu. Tập hợp các ngôn ngữ mà thiết bị thử nghiệm sẽ kích hoạt để thử nghiệm. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
orientations[] | Yêu cầu. Tập hợp các hướng để kiểm tra. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
Danh sách thiết bị Android
Danh sách các cấu hình thiết bị Android mà thử nghiệm sẽ được thực hiện trong đó.
Biểu diễn JSON |
---|
{
"androidDevices": [
{
object ( |
Lĩnh vực | |
---|---|
androidDevices[] | Yêu cầu. Danh sách các thiết bị Android. |
Thiết bị Android
Một thiết bị Android duy nhất.
Biểu diễn JSON |
---|
{ "androidModelId": string, "androidVersionId": string, "locale": string, "orientation": string } |
Lĩnh vực | |
---|---|
androidModelId | Yêu cầu. Id của thiết bị Android sẽ được sử dụng. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
androidVersionId | Yêu cầu. Id của phiên bản hệ điều hành Android sẽ được sử dụng. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
locale | Yêu cầu. Ngôn ngữ của thiết bị thử nghiệm được sử dụng để thử nghiệm. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
orientation | Yêu cầu. Cách thiết bị được định hướng trong quá trình thử nghiệm. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
Danh sách thiết bị Ios
Danh sách các cấu hình thiết bị iOS mà thử nghiệm sẽ được thực hiện.
Biểu diễn JSON |
---|
{
"iosDevices": [
{
object ( |
Lĩnh vực | |
---|---|
iosDevices[] | Yêu cầu. Danh sách các thiết bị iOS. |
Thiết Bị Ios
Một thiết bị iOS duy nhất.
Biểu diễn JSON |
---|
{ "iosModelId": string, "iosVersionId": string, "locale": string, "orientation": string } |
Lĩnh vực | |
---|---|
iosModelId | Yêu cầu. Id của thiết bị iOS sẽ được sử dụng. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
iosVersionId | Yêu cầu. Id của phiên bản phần mềm chính của iOS sẽ được sử dụng. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
locale | Yêu cầu. Ngôn ngữ của thiết bị thử nghiệm được sử dụng để thử nghiệm. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
orientation | Yêu cầu. Cách thiết bị được định hướng trong quá trình thử nghiệm. Sử dụng TestEnvironmentDiscoveryService để nhận các tùy chọn được hỗ trợ. |
Thực hiện kiểm tra
Một thử nghiệm duy nhất được thực hiện trong một môi trường duy nhất.
Biểu diễn JSON |
---|
{ "id": string, "matrixId": string, "projectId": string, "testSpecification": { object ( |
Lĩnh vực | |
---|---|
id | Chỉ đầu ra. Id duy nhất được đặt bởi dịch vụ. |
matrixId | Chỉ đầu ra. Id của TestMatrix chứa. |
projectId | Chỉ đầu ra. Dự án đám mây sở hữu quá trình thực hiện thử nghiệm. |
testSpecification | Chỉ đầu ra. Cách chạy thử nghiệm. |
shard | Chỉ đầu ra. Thông tin chi tiết về mảnh vỡ. |
environment | Chỉ đầu ra. Cách cấu hình (các) máy chủ. |
state | Chỉ đầu ra. Cho biết tiến trình thực hiện kiểm tra hiện tại (ví dụ: HOÀN THÀNH). |
toolResultsStep | Chỉ đầu ra. Nơi kết quả cho việc thực hiện này được viết. |
timestamp | Chỉ đầu ra. Thời gian thực hiện thử nghiệm này ban đầu được tạo. Dấu thời gian ở định dạng RFC3339 UTC "Zulu", với độ phân giải nano giây và tối đa chín chữ số phân số. Ví dụ: |
testDetails | Chỉ đầu ra. Thông tin chi tiết bổ sung về thử nghiệm đang chạy. |
Mảnh vỡ
Chỉ đầu ra. Thông tin chi tiết về mảnh vỡ.
Biểu diễn JSON |
---|
{
"shardIndex": integer,
"numShards": integer,
"testTargetsForShard": {
object ( |
Lĩnh vực | |
---|---|
shardIndex | Chỉ đầu ra. Chỉ mục của phân đoạn trong số tất cả các phân đoạn. |
numShards | Chỉ đầu ra. Tổng số mảnh vỡ. |
testTargetsForShard | Chỉ đầu ra. Kiểm tra mục tiêu cho từng phân đoạn. Chỉ được thiết lập để phân đoạn thủ công. |
estimatedShardDuration | Chỉ đầu ra. Thời lượng phân đoạn ước tính dựa trên bản ghi thời gian của trường hợp thử nghiệm trước đó, nếu có. Khoảng thời gian tính bằng giây với tối đa chín chữ số phân số, kết thúc bằng ' |
Môi trường
Môi trường mà thử nghiệm được chạy.
Biểu diễn JSON |
---|
{ // Union field |
Lĩnh vực | |
---|---|
environment trường trường đoàn thể. Yêu cầu. Môi trường. environment chỉ có thể là một trong những điều sau đây: | |
androidDevice | Một thiết bị Android phải được sử dụng với thử nghiệm Android. |
iosDevice | Một thiết bị iOS phải được sử dụng với thử nghiệm iOS. |
Trạng thái kiểm tra
Trạng thái (tức là tiến trình) của việc thực hiện kiểm thử hoặc ma trận.
Enum | |
---|---|
TEST_STATE_UNSPECIFIED | Không được dùng. Chỉ dành cho phiên bản proto. |
VALIDATING | Việc thực thi hoặc ma trận đang được xác thực. |
PENDING | Việc thực thi hoặc ma trận đang chờ tài nguyên có sẵn. |
RUNNING | Việc thực hiện hiện đang được xử lý. Chỉ có thể được thiết lập khi thực thi. |
FINISHED | Việc thực thi hoặc ma trận đã kết thúc bình thường. Trên ma trận, điều này có nghĩa là quá trình xử lý ở cấp độ ma trận được hoàn thành bình thường nhưng các lần thực thi riêng lẻ có thể ở trạng thái LỖI. |
ERROR | Quá trình thực thi hoặc ma trận đã dừng do gặp phải lỗi cơ sở hạ tầng. |
UNSUPPORTED_ENVIRONMENT | Việc thực thi không được chạy vì nó tương ứng với môi trường không được hỗ trợ. Chỉ có thể được thiết lập khi thực thi. |
INCOMPATIBLE_ENVIRONMENT | Việc thực thi không được chạy vì đầu vào được cung cấp không tương thích với môi trường được yêu cầu. Ví dụ: AndroidVersion được yêu cầu thấp hơn minSdkVersion của APK Chỉ có thể được thiết lập khi thực thi. |
INCOMPATIBLE_ARCHITECTURE | Việc thực thi không được chạy vì đầu vào được cung cấp không tương thích với kiến trúc được yêu cầu. Ví dụ: thiết bị được yêu cầu không hỗ trợ chạy mã gốc trong APK được cung cấp Chỉ có thể được thiết lập khi thực thi. |
CANCELLED | Người dùng đã hủy việc thực thi. Chỉ có thể được thiết lập khi thực thi. |
INVALID | Việc thực thi hoặc ma trận không được chạy vì thông tin đầu vào được cung cấp không hợp lệ. Ví dụ: tệp đầu vào không thuộc loại mong đợi, không đúng định dạng/hỏng hoặc bị gắn cờ là phần mềm độc hại |
Công cụKết quảBước
Đại diện cho một tài nguyên bước kết quả công cụ.
Điều này có kết quả của TestExecution.
Biểu diễn JSON |
---|
{ "projectId": string, "historyId": string, "executionId": string, "stepId": string } |
Lĩnh vực | |
---|---|
projectId | Chỉ đầu ra. Dự án đám mây sở hữu bước kết quả công cụ. |
historyId | Chỉ đầu ra. ID lịch sử kết quả của công cụ. |
executionId | Chỉ đầu ra. ID thực thi kết quả công cụ. |
stepId | Chỉ đầu ra. ID bước kết quả của công cụ. |
Chi tiết kiểm tra
Thông tin chi tiết bổ sung về tiến độ của quá trình chạy thử nghiệm.
Biểu diễn JSON |
---|
{ "progressMessages": [ string ], "errorMessage": string } |
Lĩnh vực | |
---|---|
progressMessages[] | Chỉ đầu ra. Mô tả chi tiết, dễ đọc của con người về tiến trình kiểm tra. Ví dụ: "Cung cấp thiết bị", "Bắt đầu thử nghiệm". Trong quá trình thực hiện, dữ liệu mới có thể được thêm vào cuối ProgressMessages. |
errorMessage | Chỉ đầu ra. Nếu TestState là ERROR thì chuỗi này sẽ chứa các chi tiết mà con người có thể đọc được về lỗi. |
Lưu trữ kết quả
Vị trí lưu trữ kết quả chạy thử nghiệm.
Biểu diễn JSON |
---|
{ "googleCloudStorage": { object ( |
Lĩnh vực | |
---|---|
googleCloudStorage | Yêu cầu. |
toolResultsHistory | Lịch sử kết quả công cụ chứa việc thực thi kết quả công cụ mà kết quả được ghi vào. Nếu không được cung cấp, dịch vụ sẽ chọn một giá trị phù hợp. |
toolResultsExecution | Chỉ đầu ra. Công cụ thực hiện kết quả mà kết quả được ghi vào. |
resultsUrl | Chỉ đầu ra. URL tới kết quả trong Bảng điều khiển web Firebase. |
Lưu trữ đám mây của Google
Vị trí lưu trữ trong bộ lưu trữ đám mây của Google (GCS).
Biểu diễn JSON |
---|
{ "gcsPath": string } |
Lĩnh vực | |
---|---|
gcsPath | Yêu cầu. Đường dẫn đến thư mục trong GCS cuối cùng sẽ chứa kết quả của bài kiểm tra này. Người dùng yêu cầu phải có quyền ghi vào nhóm trong đường dẫn được cung cấp. |
Công cụKết quảLịch sử
Đại diện cho một tài nguyên lịch sử kết quả công cụ.
Biểu diễn JSON |
---|
{ "projectId": string, "historyId": string } |
Lĩnh vực | |
---|---|
projectId | Yêu cầu. Dự án đám mây sở hữu lịch sử kết quả của công cụ. |
historyId | Yêu cầu. ID lịch sử kết quả của công cụ. |
Công cụKết quảThực thi
Đại diện cho một tài nguyên thực thi kết quả công cụ.
Điều này có kết quả của TestMatrix.
Biểu diễn JSON |
---|
{ "projectId": string, "historyId": string, "executionId": string } |
Lĩnh vực | |
---|---|
projectId | Chỉ đầu ra. Dự án đám mây sở hữu công cụ thực thi kết quả. |
historyId | Chỉ đầu ra. ID lịch sử kết quả của công cụ. |
executionId | Chỉ đầu ra. ID thực thi kết quả công cụ. |
Chi tiết ma trận không hợp lệ
Lý do chi tiết khiến Ma trận được coi là KHÔNG HỢP LỆ.
Enum | |
---|---|
INVALID_MATRIX_DETAILS_UNSPECIFIED | Không được dùng. Chỉ dành cho phiên bản proto. |
DETAILS_UNAVAILABLE | Ma trận KHÔNG HỢP LỆ nhưng không có thêm thông tin chi tiết nào. |
MALFORMED_APK | Không thể phân tích cú pháp APK ứng dụng đầu vào. |
MALFORMED_TEST_APK | Không thể phân tích cú pháp APK thử nghiệm đầu vào. |
NO_MANIFEST | Không thể tìm thấy AndroidManifest.xml. |
NO_PACKAGE_NAME | Tệp kê khai APK không khai báo tên gói. |
INVALID_PACKAGE_NAME | ID ứng dụng APK (còn gọi là tên gói) không hợp lệ. Xem thêm https://developer.android.com/build/configure-app-module#set-application-id |
TEST_SAME_AS_APP | Gói thử nghiệm và gói ứng dụng giống nhau. |
NO_INSTRUMENTATION | Apk thử nghiệm không khai báo thiết bị đo đạc. |
NO_SIGNATURE | Apk ứng dụng đầu vào không có chữ ký. |
INSTRUMENTATION_ORCHESTRATOR_INCOMPATIBLE | Lớp trình chạy thử nghiệm do người dùng chỉ định hoặc trong tệp kê khai của APK thử nghiệm không tương thích với Android Test Orchestrator. Orchestrator chỉ tương thích với AndroidJUnitRunner phiên bản 1.1 trở lên. Có thể tắt trình soạn thảo bằng cách sử dụng DO_NOT_USE_ORCHESTRATOR Tùy chọn trình soạn thảo. |
NO_TEST_RUNNER_CLASS | APK thử nghiệm không chứa lớp chạy thử nghiệm do người dùng chỉ định hoặc trong tệp kê khai. Điều này có thể được gây ra bởi một trong những lý do sau:
|
NO_LAUNCHER_ACTIVITY | Không thể tìm thấy hoạt động của trình khởi chạy chính. |
FORBIDDEN_PERMISSIONS | Ứng dụng khai báo một hoặc nhiều quyền không được phép. |
INVALID_ROBO_DIRECTIVES | Có xung đột trong các Chỉ thị robo được cung cấp. |
INVALID_RESOURCE_NAME | Có ít nhất một tên tài nguyên không hợp lệ trong chỉ thị robo được cung cấp |
INVALID_DIRECTIVE_ACTION | Định nghĩa hành động không hợp lệ trong chỉ thị robo (ví dụ: hành động nhấp hoặc bỏ qua bao gồm trường văn bản đầu vào) |
TEST_LOOP_INTENT_FILTER_NOT_FOUND | Không có bộ lọc ý định vòng lặp thử nghiệm hoặc bộ lọc được cung cấp không được định dạng chính xác. |
SCENARIO_LABEL_NOT_DECLARED | Yêu cầu chứa nhãn kịch bản chưa được khai báo trong tệp kê khai. |
SCENARIO_LABEL_MALFORMED | Đã xảy ra lỗi khi phân tích giá trị của nhãn. |
SCENARIO_NOT_DECLARED | Yêu cầu chứa số kịch bản không được khai báo trong tệp kê khai. |
DEVICE_ADMIN_RECEIVER | Ứng dụng quản trị viên thiết bị không được phép. |
MALFORMED_XC_TEST_ZIP | XCTest đã nén không đúng định dạng. Tệp zip không chứa một tệp .xctestrun duy nhất và nội dung của thư mục DerivedData/Build/Products. |
BUILT_FOR_IOS_SIMULATOR | XCTest đã nén được xây dựng cho trình mô phỏng iOS thay vì cho thiết bị vật lý. |
NO_TESTS_IN_XC_TEST_ZIP | Tệp .xctestrun không chỉ định bất kỳ mục tiêu thử nghiệm nào. |
USE_DESTINATION_ARTIFACTS | Một hoặc nhiều mục tiêu thử nghiệm được xác định trong tệp .xctestrun chỉ định "UseDestinationArtifacts", mục tiêu này không được phép. |
TEST_NOT_APP_HOSTED | Kiểm thử XC chạy trên thiết bị vật lý phải có "IsAppHostedTestBundle" == "true" trong tệp xctestrun. |
PLIST_CANNOT_BE_PARSED | Không thể phân tích cú pháp tệp Info.plist trong zip XCTest. |
TEST_ONLY_APK | APK được đánh dấu là "testOnly". Không được dùng nữa và hiện không được sử dụng. |
MALFORMED_IPA | Không thể phân tích cú pháp IPA đầu vào. |
MISSING_URL_SCHEME | Ứng dụng không đăng ký sơ đồ URL vòng lặp trò chơi. |
MALFORMED_APP_BUNDLE | Không thể xử lý gói ứng dụng iOS (.app). |
NO_CODE_APK | APK không chứa mã. Xem thêm https://developer.android.com/guide/topics/manifest/application-element.html#code |
INVALID_INPUT_APK | Đường dẫn APK đầu vào được cung cấp không đúng định dạng, tệp APK không tồn tại hoặc người dùng không có quyền truy cập vào tệp APK. |
INVALID_APK_PREVIEW_SDK | APK được xây dựng cho SDK xem trước không được hỗ trợ |
MATRIX_TOO_LARGE | Ma trận được mở rộng để chứa quá nhiều lần thực thi. |
TEST_QUOTA_EXCEEDED | Không đủ hạn mức kiểm thử để chạy các lệnh thực thi trong ma trận này. |
SERVICE_NOT_ACTIVATED | API dịch vụ đám mây bắt buộc chưa được kích hoạt. Xem: https://firebase.google.com/docs/test-lab/android/continuous#requirements |
UNKNOWN_PERMISSION_ERROR | Đã xảy ra sự cố về quyền không xác định khi chạy thử nghiệm này. |
Kết quảTóm tắt
Tóm tắt kết quả cho một ma trận thử nghiệm đã hoàn thành.
Enum | |
---|---|
OUTCOME_SUMMARY_UNSPECIFIED | Không được dùng. Chỉ dành cho phiên bản proto. |
SUCCESS | Ví dụ, việc chạy ma trận thử nghiệm đã thành công:
|
FAILURE | Ví dụ, một lần chạy không thành công:
|
INCONCLUSIVE | Một điều gì đó bất ngờ đã xảy ra. Quá trình chạy vẫn được coi là không thành công nhưng đây có thể chỉ là sự cố nhất thời và việc chạy lại thử nghiệm có thể thành công. |
SKIPPED | Tất cả các bài kiểm tra đã bị bỏ qua, ví dụ:
|
phương pháp | |
---|---|
| Hủy bỏ các lần thực hiện kiểm thử chưa hoàn thành trong ma trận kiểm thử. |
| Tạo và chạy ma trận kiểm thử theo các thông số kỹ thuật đã cho. |
| Kiểm tra trạng thái của ma trận thử nghiệm và các lần thực thi sau khi chúng được tạo. |