- משאב: TestMatrix
- ClientInfo
- ClientInfoDetail
- מפרט בדיקה
- הגדרות בדיקה
- DeviceFile
- ObbFile
- הפנית קובץ
- רגיל קובץ
- Apk
- חֶשְׁבּוֹן
- GoogleAuto
- משתנה הסביבה
- SystraceSetup
- IosTestSetup
- IosDeviceFile
- AndroidInstrumentationTest
- AppBundle
- תזמורת אפשרות
- ShardingOption
- UniformSharding
- ריסוק ידני
- TestTargetsForShard
- SmartSharding
- AndroidRoboTest
- RoboDirective
- RoboActionType
- RoboMode
- RoboStartingIntent
- LauncherActivityIntent
- StartActivityIntent
- AndroidTestLoop
- IosXcTest
- IosTestLoop
- EnvironmentMatrix
- AndroidMatrix
- AndroidDeviceList
- מכשיר אנדרואיד
- IosDeviceList
- IosDevice
- TestExecution
- חֶרֶס
- סביבה
- TestState
- כלי תוצאות שלב
- פרטי הבדיקה
- אחסון תוצאות
- GoogleCloudStorage
- ToolResultsHistory
- ToolResultsExecution
- InvalidMatrixDetails
- סיכום תוצאה
- שיטות
משאב: TestMatrix
TestMatrix לוכדת את כל הפרטים על בדיקה. הוא מכיל את תצורת הסביבה, מפרט הבדיקה, ביצועי הבדיקות והמצב הכולל והתוצאה.
ייצוג JSON |
---|
{ "testMatrixId": string, "projectId": string, "clientInfo": { object ( |
שדות | |
---|---|
testMatrixId | פלט בלבד. מזהה ייחודי שהוגדר על ידי השירות. |
projectId | פרויקט הענן שבבעלותו מטריצת הבדיקה. |
clientInfo | מידע על הלקוח שהפעיל את הבדיקה. |
testSpecification | נדרש. כיצד להפעיל את הבדיקה. |
environmentMatrix | נדרש. המכשירים עליהם מבוצעות הבדיקות. |
testExecutions[] | פלט בלבד. רשימת ביצועי הבדיקה שהשירות יוצר עבור מטריצה זו. |
resultStorage | נדרש. היכן כתובות התוצאות עבור המטריצה. |
state | פלט בלבד. מציין את ההתקדמות הנוכחית של מטריצת הבדיקה. |
timestamp | פלט בלבד. הזמן שבו נוצרה תחילה מטריצת בדיקה זו. חותמת זמן בפורמט RFC3339 UTC "Zulu", עם רזולוציה של ננו-שניות ועד תשע ספרות חלקיות. דוגמאות: |
invalidMatrixDetails | פלט בלבד. מתאר מדוע המטריצה נחשבת לא חוקית. שימושי רק עבור מטריצות במצב INVALID. |
flakyTestAttempts | מספר הפעמים ש-TestExecution צריך להתבצע מחדש אם אחד או יותר ממקרי הבדיקה שלו נכשלים מסיבה כלשהי. המספר המרבי של שידורים חוזרים המותרים הוא 10. ברירת המחדל היא 0, מה שמרמז שאין שידורים חוזרים. |
outcomeSummary | פלט בלבד. התוצאה הכוללת של הבדיקה. מוגדר רק כאשר מצב מטריצת הבדיקה סיים. |
failFast | אם זה נכון, רק ניסיון בודד ייעשה לכל היותר להפעיל כל ביצוע/שבר במטריצה. ניסיונות בדיקה מתקלפים אינם מושפעים. בדרך כלל, נעשים 2 ניסיונות או יותר אם מזוהה בעיית תשתית אפשרית. תכונה זו מיועדת לעומסי עבודה רגישים לזמן השהייה. השכיחות של כשלים בביצוע עשויה להיות גדולה משמעותית עבור מטריצות מהירות כשל והתמיכה מוגבלת יותר בגלל הציפייה הזו. |
ClientInfo
מידע על הלקוח שהפעיל את הבדיקה.
ייצוג JSON |
---|
{
"name": string,
"clientInfoDetails": [
{
object ( |
שדות | |
---|---|
name | נדרש. שם לקוח, כגון gcloud. |
clientInfoDetails[] | רשימת המידע המפורט על הלקוח. |
ClientInfoDetail
צמד מפתח-ערך של מידע מפורט על הלקוח שהפעיל את הבדיקה. דוגמאות: {'Version', '1.0'}, {'Release Track', 'BETA'}.
ייצוג JSON |
---|
{ "key": string, "value": string } |
שדות | |
---|---|
key | נדרש. המפתח של מידע מפורט על הלקוח. |
value | נדרש. הערך של מידע מפורט על הלקוח. |
מפרט בדיקה
תיאור של אופן הפעלת הבדיקה.
ייצוג JSON |
---|
{ "testTimeout": string, "disableVideoRecording": boolean, "disablePerformanceMetrics": boolean, // Union field |
שדות | |
---|---|
testTimeout | הזמן המקסימלי שביצוע בדיקה מורשה לפעול לפני שהוא מבוטל אוטומטית. ערך ברירת המחדל הוא 5 דקות. משך בשניות עם עד תשע ספרות חלקיות, המסתיים ב- ' |
disableVideoRecording | משבית הקלטת וידאו. עשוי להפחית את זמן האחזור לבדיקה. |
disablePerformanceMetrics | משבית את הקלטת מדדי הביצועים. עשוי להפחית את זמן האחזור לבדיקה. |
setup שדה איחוד. דרישות הגדרת הבדיקה. setup יכולה להיות רק אחת מהאפשרויות הבאות: | |
testSetup | בדיקת דרישות התקנה עבור אנדרואיד, למשל קבצים להתקנה, סקריפטים של אתחול. |
iosTestSetup | דרישות הגדרת בדיקה עבור iOS. |
test שטח של האיחוד. נדרש. סוג הבדיקה שיש להפעיל. test יכולה להיות רק אחת מהאפשרויות הבאות: | |
androidInstrumentationTest | מבחן מכשור אנדרואיד. |
androidRoboTest | מבחן רובו לאנדרואיד. |
androidTestLoop | אפליקציית אנדרואיד עם לולאת בדיקה. |
iosXcTest | בדיקת iOS XCT, באמצעות קובץ .xctestrun. |
iosTestLoop | אפליקציית iOS עם לולאת בדיקה. |
הגדרות בדיקה
תיאור כיצד להגדיר את מכשיר האנדרואיד לפני הפעלת הבדיקה.
ייצוג JSON |
---|
{ "filesToPush": [ { object ( |
שדות | |
---|---|
filesToPush[] | רשימת קבצים שיש לדחוף למכשיר לפני תחילת הבדיקה. |
directoriesToPull[] | רשימת ספריות במכשיר להעלאה ל-GCS בתום הבדיקה; הם חייבים להיות נתיבים מוחלטים תחת /sdcard, /storage או /data/local/tmp. שמות הנתיבים מוגבלים לתווים az AZ 0-9 _ - . + ו/ הערה: הנתיבים /sdcard ו-/data יהיו זמינים ויטופלו כהחלפות נתיב מרומז. לדוגמה, אם /sdcard במכשיר מסוים אינו ממפה לאחסון חיצוני, המערכת תחליף אותו בקידומת נתיב האחסון החיצוני עבור אותו התקן. |
additionalApks[] | APKs להתקנה בנוסף לאלו שנבדקו ישירות. כרגע מוגבל ל-100. |
account | המכשיר יהיה מחובר לחשבון זה למשך הבדיקה. |
networkProfile | פרופיל תעבורת הרשת המשמש להפעלת הבדיקה. ניתן לשאול פרופילי רשת זמינים באמצעות סוג הסביבה NETWORK_CONFIGURATION בעת קריאה ל-TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog. |
environmentVariables[] | משתני סביבה להגדרה עבור הבדיקה (חל רק עבור בדיקות מכשור). |
systrace | תצורת Systrace להרצה. הוצא משימוש: Systrace השתמשה ב-Python 2 ששקעה ב-2020-01-01. Systrace אינה נתמכת עוד ב-Cloud Testing API, ולא יסופק קובץ Systrace בתוצאות. |
dontAutograntPermissions | האם למנוע את מתן כל הרשאות זמן הריצה בעת התקנת האפליקציה |
DeviceFile
תיאור קובץ יחיד של מכשיר.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
device_file איחוד . נדרש. device_file יכול להיות רק אחד מהבאים: | |
obbFile | הפניה לקובץ כתם בינארי אטום. |
regularFile | הפניה לקובץ רגיל. |
ObbFile
קובץ כתם בינארי אטום להתקנה במכשיר לפני תחילת הבדיקה.
ייצוג JSON |
---|
{
"obbFileName": string,
"obb": {
object ( |
שדות | |
---|---|
obbFileName | נדרש. שם קובץ OBB אשר חייב להתאים לפורמט כפי שצוין על ידי Android, למשל [main|patch].0300110.com.example.android.obb אשר יותקן ב-<shared-storage>/Android/obb/<package-name>/ על המכשיר. |
obb | נדרש. קבצים אטומים בינאריים (OBB) להתקנה במכשיר. |
הפנית קובץ
הפניה לקובץ, המשמשת לקלט של משתמשים.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
file שדה האיחוד. נדרש. הפניה לקובץ. file יכול להיות רק אחד מהבאים: | |
gcsPath | נתיב לקובץ ב-Google Cloud Storage. דוגמה: gs://build-app-1414623860166/app%40debug-unaligned.apk נתיבים אלה צפויים להיות מקודדים בכתובת אתר (קידוד באחוזים) |
רגיל קובץ
קובץ או ספרייה להתקנה במכשיר לפני תחילת הבדיקה.
ייצוג JSON |
---|
{
"content": {
object ( |
שדות | |
---|---|
content | נדרש. קובץ המקור. |
devicePath | נדרש. היכן לשים את התוכן במכשיר. חייב להיות נתיב מוחלט, מורשה. אם הקובץ קיים, הוא יוחלף. הספריות הבאות בצד המכשיר וכל ספריית המשנה שלהן רשומות ברשימת ההיתרים: ${EXTERNAL_STORAGE}, /sdcard או /storage ${ANDROID_DATA}/local/tmp, או /data/local/tmp ציון נתיב מחוץ לעצי ספריות אלה אינו חוקי. הנתיבים /sdcard ו-/data יהיו זמינים ויטופלו כהחלפות נתיב מרומז. לדוגמה, אם /sdcard במכשיר מסוים אינו ממפה לאחסון חיצוני, המערכת תחליף אותו בקידומת נתיב האחסון החיצוני של אותו התקן ותעתיק את הקובץ לשם. מומלץ מאוד להשתמש ב- Environment API באפליקציה ובקוד בדיקה כדי לגשת לקבצים במכשיר בצורה ניידת. |
Apk
קובץ חבילת אנדרואיד להתקנה.
ייצוג JSON |
---|
{
"location": {
object ( |
שדות | |
---|---|
location | הנתיב ל-APK שיותקן במכשיר לפני תחילת הבדיקה. |
packageName | חבילת ה-Java עבור ה-APK להתקנה. הערך נקבע על ידי בחינת מניפסט הבקשה. |
חֶשְׁבּוֹן
מזהה חשבון וכיצד להיכנס אליו.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
שדה האיחוד account_type . נדרש. סוג החשבון, לפי מה הוא מיועד (למשל גוגל) ומהו מנגנון הכניסה שלו (למשל שם משתמש וסיסמה). account_type יכול להיות רק אחד מהבאים: | |
googleAuto | חשבון התחברות אוטומטי לגוגל. |
GoogleAuto
מאפשר התחברות אוטומטית לחשבון Google. אם מוגדר, השירות מייצר אוטומטית חשבון בדיקה של גוגל ומוסיף אותו למכשיר, לפני ביצוע הבדיקה. שים לב שייתכן שיעשה שימוש חוזר בחשבונות בדיקה. יישומים רבים מציגים את מערך הפונקציונליות המלא שלהם כאשר קיים חשבון במכשיר. כניסה למכשיר עם חשבונות שנוצרו אלה מאפשרת בדיקת פונקציות נוספות.
משתנה הסביבה
זוג מפתח-ערך עבר כמשתנה סביבה למבחן.
ייצוג JSON |
---|
{ "key": string, "value": string } |
שדות | |
---|---|
key | מפתח עבור משתנה הסביבה. |
value | ערך עבור משתנה הסביבה. |
SystraceSetup
ייצוג JSON |
---|
{ "durationSeconds": integer } |
שדות | |
---|---|
durationSeconds | משך סיסטרס בשניות. צריך להיות בין 1 ל-30 שניות. 0 משבית את systrace. |
IosTestSetup
תיאור כיצד להגדיר מכשיר iOS לפני הפעלת הבדיקה.
ייצוג JSON |
---|
{ "networkProfile": string, "additionalIpas": [ { object ( |
שדות | |
---|---|
networkProfile | פרופיל תעבורת הרשת המשמש להפעלת הבדיקה. ניתן לשאול פרופילי רשת זמינים באמצעות סוג הסביבה NETWORK_CONFIGURATION בעת קריאה ל-TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog. |
additionalIpas[] | אפליקציות iOS להתקנה בנוסף לאלו שנבדקו ישירות. |
pushFiles[] | רשימת קבצים שיש לדחוף למכשיר לפני תחילת הבדיקה. |
pullDirectories[] | רשימת ספריות במכשיר להעלאה ל-Cloud Storage בסוף הבדיקה. ספריות צריכות להיות בספרייה משותפת (כגון /private/var/mobile/Media) או בתוך ספרייה נגישה בתוך מערכת הקבצים של האפליקציה (כגון /Documents) על ידי ציון מזהה החבילה. |
IosDeviceFile
קובץ או ספרייה להתקנה במכשיר לפני תחילת הבדיקה.
ייצוג JSON |
---|
{
"content": {
object ( |
שדות | |
---|---|
content | קובץ המקור |
bundleId | מזהה החבילה של האפליקציה שבה נמצא הקובץ הזה. יישומי iOS ארגזים מערכת קבצים משלהם, כך שקובצי אפליקציה חייבים לציין איזו אפליקציה מותקנת במכשיר. |
devicePath | מיקום הקובץ במכשיר, בתוך מערכת הקבצים בארגז החול של האפליקציה |
AndroidInstrumentationTest
בדיקה של אפליקציית אנדרואיד שיכולה לשלוט ברכיב אנדרואיד ללא תלות במחזור החיים הרגיל שלו. מבחני מכשור אנדרואיד מריצים APK של אפליקציה ובודקים APK בתוך אותו תהליך במכשיר Android וירטואלי או פיזי. הם גם מציינים כיתת רץ מבחן, כגון com.google.GoogleTestRunner, שיכולה להשתנות בהתאם למסגרת המכשור הספציפית שנבחרה.
ראה https://developer.android.com/training/testing/fundamentals למידע נוסף על סוגי מבחני אנדרואיד.
ייצוג JSON |
---|
{ "testApk": { object ( |
שדות | |
---|---|
testApk | נדרש. ה-APK המכיל את קוד הבדיקה לביצוע. |
appPackageId | חבילת ה-Java עבור האפליקציה הנבדקת. ערך ברירת המחדל נקבע על ידי בחינת המניפסט של היישום. |
testPackageId | חבילת ה-Java לביצוע הבדיקה. ערך ברירת המחדל נקבע על ידי בחינת המניפסט של היישום. |
testRunnerClass | כיתת InstrumentationTestRunner. ערך ברירת המחדל נקבע על ידי בחינת המניפסט של היישום. |
testTargets[] | כל יעד חייב להיות מוסמך במלואו עם שם החבילה או שם המחלקה, באחד מהפורמטים הבאים:
אם ריק, כל היעדים במודול יופעלו. |
orchestratorOption | האפשרות האם להריץ כל מבחן במסגרת הפעלת המכשור שלו עם Android Test Orchestrator או לא. ** Orchestrator תואם רק ל-AndroidJUnitRunner גרסה 1.1 ומעלה! ** Orchestrator מציע את ההטבות הבאות:
ראה https://developer.android.com/training/testing/junit-runner.html#using-android-test-orchestrator למידע נוסף על Android Test Orchestrator. אם לא נקבע, המבחן יתנהל ללא המתזמר. |
shardingOption | אפשרות להריץ בדיקות במספר רסיסים במקביל. |
app_under_test של האיחוד שדה . נדרש. app_under_test יכול להיות רק אחד מהאפשרויות הבאות: | |
appApk | ה-APK עבור האפליקציה הנבדקת. |
appBundle | חבילת אפליקציות מרובת APK עבור האפליקציה הנבדקת. |
AppBundle
פורמט קובץ Android App Bundle, המכיל קובץ BundleConfig.pb, ספריית מודול בסיס, אפס או יותר ספריות של מודול תכונות דינמיות.
ראה https://developer.android.com/guide/app-bundle/build להנחיות לבניית חבילות אפליקציות.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
bundle שדה איחוד . נדרש. מידע על מיקום חבילה. bundle יכולה להיות רק אחת מהאפשרויות הבאות: | |
bundleLocation | קובץ .aab המייצג את חבילת האפליקציות הנבדקת. |
תזמורת אפשרות
מציין כיצד לבצע את הבדיקה.
תקצירים | |
---|---|
ORCHESTRATOR_OPTION_UNSPECIFIED | ערך ברירת מחדל: השרת יבחר את המצב. כרגע מרמז שהמבחן יתנהל ללא המתזמר. בעתיד, כל מבחני המכשור יופעלו עם המתזמר. השימוש בתזמור מעודד מאוד בגלל כל היתרונות שהוא מציע. |
USE_ORCHESTRATOR | הרץ מבחן באמצעות מתזמר. ** תואם רק ל-AndroidJUnitRunner גרסה 1.1 ומעלה! **מומלץ. |
DO_NOT_USE_ORCHESTRATOR | הרץ מבחן ללא שימוש בתזמור. |
ShardingOption
אפשרויות להפעלת פיצול.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
| |
uniformSharding | מקרי בוחן רסיסים באופן אחיד בהינתן מספר כולל של רסיסים. |
manualSharding | מחלק מקרי בדיקה לקבוצות שצוינו של חבילות, מחלקות ו/או שיטות. |
smartSharding | בדיקת רסיסים מבוססת על רשומות תזמון קודמות של מקרי בדיקה. |
UniformSharding
מקרי בוחן רסיסים באופן אחיד בהינתן מספר כולל של רסיסים.
עבור מבחני מכשור, הוא יתורגם לארגומנטים "-e numShard" ו-"-e shardIndex" של AndroidJUnitRunner. כאשר פיצול אחיד מופעל, ציון אחד מארגומנטי הריסוק הללו באמצעות environmentVariables
אינו חוקי.
בהתבסס על מנגנון הריסוק ש-AndroidJUnitRunner משתמש בו, אין ערובה לכך שמקרי הבדיקה יחולקו באופן אחיד על פני כל הרסיסים.
ייצוג JSON |
---|
{ "numShards": integer } |
שדות | |
---|---|
numShards | נדרש. המספר הכולל של רסיסי יצירה. זה חייב להיות תמיד מספר חיובי שאינו גדול מהמספר הכולל של מקרי הבדיקה. כאשר אתה בוחר מכשיר פיזי אחד או יותר, מספר הרסיסים חייב להיות <= 50. כאשר אתה בוחר מכשיר וירטואלי אחד או יותר של ARM, הוא חייב להיות <= 200. כאשר אתה בוחר רק מכשירים וירטואליים x86, הוא חייב להיות <= 500 . |
ריסוק ידני
מחלק מקרי בדיקה לקבוצות שצוינו של חבילות, מחלקות ו/או שיטות.
כאשר פיצול ידני מופעל, ציון יעדי בדיקה באמצעות environmentVariables או ב- InstrumentationTest אינו חוקי.
ייצוג JSON |
---|
{
"testTargetsForShard": [
{
object ( |
שדות | |
---|---|
testTargetsForShard[] | נדרש. קבוצת חבילות, מחלקות ו/או שיטות בדיקה שיופעלו עבור כל רסיס שנוצר באופן ידני. עליך לציין לפחות רסיס אחד אם שדה זה קיים. כאשר אתה בוחר מכשיר פיזי אחד או יותר, מספר הבדיקות החוזרות של TargetsForShard חייב להיות <= 50. כאשר אתה בוחר מכשיר וירטואלי אחד או יותר של ARM, הוא חייב להיות <= 200. כאשר אתה בוחר רק מכשירים וירטואליים x86, הוא חייב להיות <= 500. |
TestTargetsForShard
בדיקת מטרות עבור רסיס.
ייצוג JSON |
---|
{ "testTargets": [ string ] } |
שדות | |
---|---|
testTargets[] | קבוצת חבילות, מחלקות ו/או שיטות בדיקה שיופעלו עבור כל רסיס. יש לציין את היעדים בפורמט ארגומנט AndroidJUnitRunner. לדוגמה, "package com.my.packages" "class com.my.package.MyClass". מספר יעדי הבדיקה חייב להיות גדול מ-0. |
SmartSharding
בדיקת רסיסים מבוססת על רשומות תזמון קודמות של מקרי בדיקה.
ייצוג JSON |
---|
{ "targetedShardDuration": string } |
שדות | |
---|---|
targetedShardDuration | משך הזמן שבדיקות בתוך רסיס אמורות לקחת. ברירת מחדל: 300 שניות (5 דקות). המינימום המותר: 120 שניות (2 דקות). ספירת הרסיסים נקבעת באופן דינמי על סמך זמן, עד למגבלת הרסיס המקסימלית (מתואר להלן). כדי להבטיח לפחות מקרה בדיקה אחד לכל רסיס, מספר הרסיסים לא יעלה על מספר מקרי הבדיקה. יחרוג משך ה-Shard אם:
משך ה-Shard אינו מובטח מכיוון ש-Sharding חכם משתמש בהיסטוריית מקרי בדיקה ובמשכי ברירת מחדל שעשויים להיות לא מדויקים. הכללים למציאת רשומות התזמון של מקרה הבדיקה הם:
מכיוון שמשך הרסיס בפועל יכול לעלות על משך הרסיס המיועד, אנו ממליצים להגדיר את ערך היעד לפחות 5 דקות פחות מפסק הזמן המרבי המותר לבדיקה (45 דקות עבור מכשירים פיזיים ו-60 דקות עבור וירטואליים), או שתשתמש בהתאמה אישית ערך הזמן הקצוב לבדיקה שהגדרת. גישה זו מונעת מביטול הרסיס לפני שכל הבדיקות יסתיימו. שימו לב שיש הגבלה למספר המרבי של רסיסים. כאשר אתה בוחר מכשיר פיזי אחד או יותר, מספר הרסיסים חייב להיות <= 50. כאשר אתה בוחר מכשיר וירטואלי אחד או יותר של ARM, הוא חייב להיות <= 200. כאשר אתה בוחר רק מכשירים וירטואליים x86, הוא חייב להיות <= 500 כדי להבטיח לפחות מקרה בדיקה אחד לכל רסיס, מספר הרסיסים לא יעלה על מספר מקרי הבדיקה. כל רסיס שנוצר נחשב למכסת הבדיקות היומית. משך בשניות עם עד תשע ספרות חלקיות, המסתיים ב- ' |
AndroidRoboTest
בדיקה של אפליקציית אנדרואיד שחוקרת את האפליקציה במכשיר אנדרואיד וירטואלי או פיזי, מוצאת אשמים ומתרסקת תוך כדי.
ייצוג JSON |
---|
{ "appPackageId": string, "appInitialActivity": string, "maxDepth": integer, "maxSteps": integer, "roboDirectives": [ { object ( |
שדות | |
---|---|
appPackageId | חבילת ה-Java עבור האפליקציה הנבדקת. ערך ברירת המחדל נקבע על ידי בחינת המניפסט של היישום. |
appInitialActivity | הפעילות הראשונית שבה יש להשתמש כדי להפעיל את האפליקציה. |
maxDepth | העומק המרבי של מחסנית המעבר שרובו יכול לחקור. צריך להיות לפחות 2 כדי לגרום לרובו לחקור את האפליקציה מעבר לפעילות הראשונה. ברירת המחדל היא 50. |
maxSteps | המספר המרבי של צעדים שרובו יכול לבצע. ברירת המחדל היא ללא גבול. |
roboDirectives[] | סדרה של הנחיות שעל רובו להחיל במהלך הסריקה. זה מאפשר למשתמשים להתאים אישית את הסריקה. לדוגמה, ניתן לספק את שם המשתמש והסיסמה עבור חשבון בדיקה. |
roboMode | המצב שבו רובו צריך לרוץ. רוב הלקוחות צריכים לאפשר לשרת לאכלס שדה זה באופן אוטומטי. |
roboScript | קובץ JSON עם רצף פעולות שעל רובו לבצע כפרולוג לסריקה. |
startingIntents[] | הכוונות ששימשו להפעלת האפליקציה לסריקה. אם לא מסופקים כאלה, הפעילות של המשגר הראשי מופעלת. אם חלק מסופקים, אז רק אלה שסופקו יופעלו (יש לספק את פעילות המשגר הראשית במפורש). |
app_under_test של האיחוד שדה . נדרש. app_under_test יכול להיות רק אחד מהאפשרויות הבאות: | |
appApk | ה-APK עבור האפליקציה הנבדקת. |
appBundle | חבילת אפליקציות מרובת APK עבור האפליקציה הנבדקת. |
RoboDirective
מנחה את רובו לקיים אינטראקציה עם רכיב ממשק משתמש ספציפי אם הוא נתקל במהלך הסריקה. נכון לעכשיו, רובו יכול לבצע הזנת טקסט או לחיצה על אלמנט.
ייצוג JSON |
---|
{
"resourceName": string,
"inputText": string,
"actionType": enum ( |
שדות | |
---|---|
resourceName | נדרש. שם משאב האנדרואיד של רכיב ממשק המשתמש היעד. לדוגמה, ב-Java: R.string.foo ב-xml: @string/foo יש צורך רק בחלק "foo". מסמך עזר: https://developer.android.com/guide/topics/resources/accessing-resources.html |
inputText | הטקסט שרובו מכוון להגדיר. אם יישאר ריק, ההנחיה תטופל כקליק על האלמנט התואם ל-resourceName. |
actionType | נדרש. סוג הפעולה שרובו צריך לבצע על האלמנט שצוין. |
RoboActionType
פעולות שרובו יכול לבצע על רכיבי ממשק משתמש.
תקצירים | |
---|---|
ACTION_TYPE_UNSPECIFIED | אל תשתמש. לגירסת פרוטו בלבד. |
SINGLE_CLICK | הפנה את רובו ללחוץ על האלמנט שצוין. No-op אם הרכיב שצוין אינו ניתן ללחיצה. |
ENTER_TEXT | הפנה את רובו להזנת טקסט באלמנט שצוין. No-op אם הרכיב שצוין אינו מופעל או אינו מאפשר הזנת טקסט. |
IGNORE | הפנה את רובו להתעלם מאינטראקציות עם אלמנט מסוים. |
RoboMode
המצב שבו רובו צריך לרוץ.
תקצירים | |
---|---|
ROBO_MODE_UNSPECIFIED | זה אומר שהשרת צריך לבחור את המצב. מוּמלָץ. |
ROBO_VERSION_1 | מפעיל את Robo במצב UIAutomator בלבד מבלי להתפטר מהאפליקציה |
ROBO_VERSION_2 | מריץ את רובו באספרסו סטנדרטי עם UIAutomator fallback |
RoboStartingIntent
הודעה לציון פעילויות ההתחלה לסריקה.
ייצוג JSON |
---|
{ "timeout": string, // Union field |
שדות | |
---|---|
timeout | פסק זמן בשניות לכל כוונה. משך בשניות עם עד תשע ספרות חלקיות, המסתיים ב- ' |
שדה איחוד starting_intent . נדרש. פרטי כוונה להתחיל פעילות. starting_intent יכול להיות רק אחד מהבאים: | |
launcherActivity | כוונה שמתחילה את פעילות המשגר הראשית. |
startActivity | כוונה שמתחילה פעילות עם פרטים ספציפיים. |
LauncherActivityIntent
מציין כוונה שמתחילה את פעילות המשגר הראשית.
StartActivityIntent
כוונת התחלה שצוינה על ידי פעולה, Uri וקטגוריות.
ייצוג JSON |
---|
{ "action": string, "uri": string, "categories": [ string ] } |
שדות | |
---|---|
action | שם פעולה. נדרש עבור START_ACTIVITY. |
uri | URI עבור הפעולה. |
categories[] | קטגוריות כוונות להגדיר על הכוונה. |
AndroidTestLoop
בדיקה של אפליקציית אנדרואיד עם לולאת בדיקה. הכוונה <intent-name> תתווסף באופן מרומז, מכיוון שמשחקים הוא המשתמש היחיד של ה-API הזה, לעת עתה.
ייצוג JSON |
---|
{ "appPackageId": string, "scenarios": [ integer ], "scenarioLabels": [ string ], // Union field |
שדות | |
---|---|
appPackageId | חבילת ה-Java עבור האפליקציה הנבדקת. ברירת המחדל נקבעת על ידי בחינת המניפסט של האפליקציה. |
scenarios[] | רשימת התרחישים שיש להפעיל במהלך הבדיקה. ברירת המחדל היא כל לולאות הבדיקה, הנגזרות מהמניפסט של היישום. |
scenarioLabels[] | רשימת תוויות התרחישים שיש להפעיל במהלך הבדיקה. על תוויות התרחישים למפות לתוויות המוגדרות במניפסט של היישום. לדוגמה, player_experience ו-com.google.test.loops.player_experience מוסיפים את כל הלולאות המסומנות במניפסט עם השם com.google.test.loops.player_experience לביצוע. ניתן לציין תרחישים גם בשדה התרחישים. |
app_under_test של האיחוד שדה . נדרש. חבילת אנדרואיד לבדיקה. app_under_test יכול להיות רק אחד מהאפשרויות הבאות: | |
appApk | ה-APK עבור האפליקציה הנבדקת. |
appBundle | חבילת אפליקציות מרובת APK עבור האפליקציה הנבדקת. |
IosXcTest
בדיקה של אפליקציית iOS המשתמשת במסגרת XCTest. Xcode תומך באפשרות "בנייה לבדיקה", אשר יוצר קובץ .xctestrun המכיל מפרט בדיקה (טיעונים, שיטות בדיקה וכו'). סוג בדיקה זה מקבל קובץ zip המכיל את קובץ .xctestrun ואת התוכן המתאים של ספריית Build/Products המכילה את כל הקבצים הבינאריים הדרושים להפעלת הבדיקות.
ייצוג JSON |
---|
{ "testsZip": { object ( |
שדות | |
---|---|
testsZip | נדרש. ה-zip המכיל את קובץ ה-.xctestrun ואת התוכן של ספריית DerivedData/Build/Products. מתעלמים מקובץ ה-.xctestrun ב-zip זה אם השדה xctestrun מצוין. |
xctestrun | קובץ .xctestrun שיעקוף את קובץ ה-.xctestrun ב-zip של הבדיקות. מכיוון שקובץ .xctestrun מכיל משתני סביבה יחד עם שיטות בדיקה להרצה ו/או להתעלם, זה יכול להיות שימושי עבור בדיקות ריסוק. ברירת המחדל נלקחת מה-zip של הבדיקות. |
xcodeVersion | גרסת Xcode שאמורה לשמש לבדיקה. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. ברירת המחדל היא לגרסת Xcode העדכנית שתומכת ב-Firebase Test Lab. |
appBundleId | פלט בלבד. מזהה החבילה של האפליקציה הנבדקת. |
testSpecialEntitlements | אפשרות לבדוק זכויות מיוחדות לאפליקציה. הגדרה זו תחתום מחדש על האפליקציה בעלת זכויות מיוחדות עם מזהה אפליקציה מפורש. תומך כרגע בבדיקת זכאות aps-environment. |
IosTestLoop
בדיקה של אפליקציית iOS המיישמת תרחיש אחד או יותר של לולאת משחק. סוג בדיקה זה מקבל יישום בארכיון (קובץ ipa) ורשימת תרחישים שלמים שיבוצעו באפליקציה ברצף.
ייצוג JSON |
---|
{
"appIpa": {
object ( |
שדות | |
---|---|
appIpa | נדרש. ה-.ipa של האפליקציה לבדיקה. |
scenarios[] | רשימת התרחישים שיש להפעיל במהלך הבדיקה. ברירת מחדל לתרחיש היחיד 0 אם לא צוין. |
appBundleId | פלט בלבד. מזהה החבילה של האפליקציה הנבדקת. |
EnvironmentMatrix
מטריצת הסביבות שבהן הבדיקה אמורה להתבצע.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
מטריצת environment_matrix שדה . נדרש. מטריצת הסביבה. environment_matrix יכול להיות רק אחד מהבאים: | |
androidMatrix | מטריצה של מכשירי אנדרואיד. |
androidDeviceList | רשימה של מכשירי אנדרואיד; הבדיקה תופעל רק במכשירים שצוינו. |
iosDeviceList | רשימה של מכשירי iOS. |
AndroidMatrix
קבוצה של תמורות תצורה של מכשיר אנדרואיד מוגדרת על ידי התוצר הצולב של הצירים הנתונים. באופן פנימי, ה-AndroidMatrix הנתון יורחב לקבוצה של מכשירי אנדרואיד.
רק תמורות נתמכות יוצגו. מתעלמים מתמורות לא חוקיות (למשל, מודלים/גרסאות לא תואמות).
ייצוג JSON |
---|
{ "androidModelIds": [ string ], "androidVersionIds": [ string ], "locales": [ string ], "orientations": [ string ] } |
שדות | |
---|---|
androidModelIds[] | נדרש. המזהים של הסט של מכשיר האנדרואיד שיש להשתמש בו. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
androidVersionIds[] | נדרש. המזהים של הסט של גרסת מערכת ההפעלה אנדרואיד לשימוש. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
locales[] | נדרש. קבוצת המקומות שמכשיר הבדיקה יאפשר לבדיקה. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
orientations[] | נדרש. סט הכיוונים לבדיקה. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
AndroidDeviceList
רשימה של תצורות מכשירי אנדרואיד שבהן יש לבצע את הבדיקה.
ייצוג JSON |
---|
{
"androidDevices": [
{
object ( |
שדות | |
---|---|
androidDevices[] | נדרש. רשימה של מכשירי אנדרואיד. |
מכשיר אנדרואיד
מכשיר אנדרואיד בודד.
ייצוג JSON |
---|
{ "androidModelId": string, "androidVersionId": string, "locale": string, "orientation": string } |
שדות | |
---|---|
androidModelId | נדרש. המזהה של מכשיר האנדרואיד שיש להשתמש בו. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
androidVersionId | נדרש. המזהה של גרסת מערכת ההפעלה אנדרואיד שיש להשתמש בה. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
locale | נדרש. המקום שבו מכשיר הבדיקה המשמש לבדיקה. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
orientation | נדרש. כיצד המכשיר מכוון במהלך הבדיקה. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
IosDeviceList
רשימה של תצורות מכשירי iOS שבהן יש לבצע את הבדיקה.
ייצוג JSON |
---|
{
"iosDevices": [
{
object ( |
שדות | |
---|---|
iosDevices[] | נדרש. רשימה של מכשירי iOS. |
IosDevice
מכשיר iOS יחיד.
ייצוג JSON |
---|
{ "iosModelId": string, "iosVersionId": string, "locale": string, "orientation": string } |
שדות | |
---|---|
iosModelId | נדרש. המזהה של מכשיר ה-iOS לשימוש. השתמש ב- TestEnvironmentDiscoveryService כדי לקבל אפשרויות נתמכות. |
iosVersionId | נדרש. המזהה של גרסת התוכנה העיקרית של iOS שיש להשתמש בה. השתמש בשירות TestEnvironmentDiscovery כדי לקבל אפשרויות נתמכות. |
locale | נדרש. המקום שבו מכשיר הבדיקה המשמש לבדיקה. השתמש בשירות TestEnvironmentDiscovery כדי לקבל אפשרויות נתמכות. |
orientation | נדרש. כיצד המכשיר מכוון במהלך הבדיקה. השתמש בשירות TestEnvironmentDiscovery כדי לקבל אפשרויות נתמכות. |
TestExecution
בדיקה בודדת שבוצעה בסביבה אחת.
ייצוג JSON |
---|
{ "id": string, "matrixId": string, "projectId": string, "testSpecification": { object ( |
שדות | |
---|---|
id | פלט בלבד. מזהה ייחודי שהוגדר על ידי השירות. |
matrixId | פלט בלבד. מזהה של ה-TestMatrix המכילה. |
projectId | פלט בלבד. פרויקט הענן בעל ביצוע הבדיקה. |
testSpecification | פלט בלבד. כיצד להפעיל את הבדיקה. |
shard | פלט בלבד. פרטים על הרסיס. |
environment | פלט בלבד. כיצד מוגדרים המחשבים המארחים. |
state | פלט בלבד. מציין את ההתקדמות הנוכחית של ביצוע הבדיקה (למשל, FINISHED). |
toolResultsStep | פלט בלבד. היכן כתובות התוצאות לביצוע זה. |
timestamp | פלט בלבד. הזמן שבו ביצוע הבדיקה הזה נוצר בתחילה. חותמת זמן בפורמט RFC3339 UTC "Zulu", עם רזולוציה של ננו-שניות ועד תשע ספרות חלקיות. דוגמאות: |
testDetails | פלט בלבד. פרטים נוספים על מבחן הריצה. |
חֶרֶס
פלט בלבד. פרטים על הרסיס.
ייצוג JSON |
---|
{
"shardIndex": integer,
"numShards": integer,
"testTargetsForShard": {
object ( |
שדות | |
---|---|
shardIndex | פלט בלבד. מדד הרסיס בין כל הרסיסים. |
numShards | פלט בלבד. המספר הכולל של הרסיסים. |
testTargetsForShard | פלט בלבד. מטרות בדיקה עבור כל רסיס. מוגדר רק לריסוק ידני. |
estimatedShardDuration | פלט בלבד. משך הרסיס המשוער מבוסס על רשומות תזמון קודמות של מקרי בדיקה, אם זמינים. משך בשניות עם עד תשע ספרות חלקיות, המסתיים ב- ' |
סביבה
הסביבה שבה הבדיקה מתנהלת.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
environment שדה האיחוד. נדרש. הסביבה. environment יכולה להיות רק אחת מהאפשרויות הבאות: | |
androidDevice | מכשיר אנדרואיד שיש להשתמש בו עם מבחן אנדרואיד. |
iosDevice | מכשיר iOS שבו יש להשתמש עם בדיקת iOS. |
TestState
המצב (כלומר, התקדמות) של ביצוע בדיקה או מטריצה.
תקצירים | |
---|---|
TEST_STATE_UNSPECIFIED | אל תשתמש. לגירסת פרוטו בלבד. |
VALIDATING | הביצוע או המטריצה מאומתים. |
PENDING | הביצוע או המטריצה ממתינים למשאבים שיהפכו לזמינים. |
RUNNING | הביצוע נמצא כעת בעיבוד. ניתן להגדיר רק על ביצוע. |
FINISHED | הביצוע או המטריצה הסתיימו כרגיל. במטריצה זה אומר שעיבוד רמת המטריצה הושלם כרגיל, אך ביצועים בודדים עשויים להיות במצב ERROR. |
ERROR | הביצוע או המטריצה הופסקו מכיוון שנתקלו בכשל בתשתית. |
UNSUPPORTED_ENVIRONMENT | הביצוע לא הופעל מכיוון שהוא מתאים לסביבה שאינה נתמכת. ניתן להגדיר רק על ביצוע. |
INCOMPATIBLE_ENVIRONMENT | הביצוע לא הופעל מכיוון שהתשומות שסופקו אינן תואמות לסביבה המבוקשת. דוגמה: גירסת Android המבוקשת נמוכה מה-minSdkVersion של APK ניתן להגדיר רק על ביצוע. |
INCOMPATIBLE_ARCHITECTURE | הביצוע לא הופעל מכיוון שהתשומות שסופקו אינן תואמות לארכיטקטורה המבוקשת. דוגמה: המכשיר המבוקש אינו תומך בהפעלת הקוד המקורי ב-APK שסופק ניתן להגדיר רק על ביצוע. |
CANCELLED | המשתמש ביטל את הביצוע. ניתן להגדיר רק על ביצוע. |
INVALID | הביצוע או המטריצה לא הופעלו מכיוון שהקלטות שסופקו אינן חוקיות. דוגמאות: קובץ הקלט אינו מהסוג הצפוי, פגום/פגום או סומן כתוכנה זדונית |
כלי תוצאות שלב
מייצג משאב שלב של תוצאות כלי.
יש לזה את התוצאות של TestExecution.
ייצוג JSON |
---|
{ "projectId": string, "historyId": string, "executionId": string, "stepId": string } |
שדות | |
---|---|
projectId | פלט בלבד. פרויקט הענן שבבעלותו שלב תוצאות הכלי. |
historyId | פלט בלבד. מזהה היסטוריית תוצאות של כלי. |
executionId | פלט בלבד. מזהה ביצוע של תוצאות כלי. |
stepId | פלט בלבד. מזהה שלב של תוצאות הכלי. |
פרטי הבדיקה
פרטים נוספים על התקדמות מבחן הריצה.
ייצוג JSON |
---|
{ "progressMessages": [ string ], "errorMessage": string } |
שדות | |
---|---|
progressMessages[] | פלט בלבד. תיאורים מפורטים של התקדמות המבחן הניתנים לקריאה על ידי אדם. לדוגמה: "הקצאת מכשיר", "התחלת בדיקה". במהלך הביצוע נתונים חדשים עשויים להתווסף לסוף progressMessages. |
errorMessage | פלט בלבד. אם ה-TestState הוא ERROR, מחרוזת זו תכיל פרטים קריאים על השגיאה. |
אחסון תוצאות
מיקומים שבהם מאוחסנות תוצאות הפעלת הבדיקה.
ייצוג JSON |
---|
{ "googleCloudStorage": { object ( |
שדות | |
---|---|
googleCloudStorage | נדרש. |
toolResultsHistory | היסטוריית תוצאות הכלי המכילה את ביצוע תוצאות הכלי שאליה נכתבות התוצאות. אם לא יינתן, השירות יבחר ערך מתאים. |
toolResultsExecution | פלט בלבד. ביצוע תוצאות הכלי שהתוצאות נכתבות אליו. |
resultsUrl | פלט בלבד. כתובת אתר לתוצאות ב-Firebase Web Console. |
GoogleCloudStorage
מיקום אחסון בתוך Google Cloud Storage (GCS).
ייצוג JSON |
---|
{ "gcsPath": string } |
שדות | |
---|---|
gcsPath | נדרש. הנתיב לספרייה ב-GCS שבסופו של דבר תכיל את התוצאות של בדיקה זו. למשתמש המבקש חייבת להיות גישת כתיבה בדלי בנתיב שסופק. |
ToolResultsHistory
מייצג משאב היסטוריית תוצאות של כלי.
ייצוג JSON |
---|
{ "projectId": string, "historyId": string } |
שדות | |
---|---|
projectId | נדרש. פרויקט הענן שבבעלותו היסטוריית תוצאות הכלי. |
historyId | נדרש. מזהה היסטוריית תוצאות של כלי. |
ToolResultsExecution
מייצג משאב ביצוע תוצאות כלי.
יש לזה תוצאות של TestMatrix.
ייצוג JSON |
---|
{ "projectId": string, "historyId": string, "executionId": string } |
שדות | |
---|---|
projectId | פלט בלבד. פרויקט הענן שבבעלותו הכלי תוצאות ביצוע. |
historyId | פלט בלבד. מזהה היסטוריית תוצאות של כלי. |
executionId | פלט בלבד. מזהה ביצוע תוצאות של כלי. |
InvalidMatrixDetails
הסיבה המפורטת לכך שמטריצה נחשבה לא חוקית.
תקצירים | |
---|---|
INVALID_MATRIX_DETAILS_UNSPECIFIED | אל תשתמש. לגירסת פרוטו בלבד. |
DETAILS_UNAVAILABLE | המטריצה אינה חוקית, אך אין פרטים נוספים זמינים. |
MALFORMED_APK | לא ניתן היה לנתח את ה-APK של אפליקציית הקלט. |
MALFORMED_TEST_APK | לא ניתן היה לנתח את ה-APK של בדיקת הקלט. |
NO_MANIFEST | ה-AndroidManifest.xml לא נמצא. |
NO_PACKAGE_NAME | מניפסט ה-APK אינו מצהיר על שם חבילה. |
INVALID_PACKAGE_NAME | מזהה אפליקציית APK (המכונה שם חבילה) אינו חוקי. ראה גם https://developer.android.com/build/configure-app-module#set-application-id |
TEST_SAME_AS_APP | חבילת הבדיקה וחבילת האפליקציה זהות. |
NO_INSTRUMENTATION | ה-apk של הבדיקה אינו מצהיר על מכשור. |
NO_SIGNATURE | לאפליקציית הקלט apk אין חתימה. |
INSTRUMENTATION_ORCHESTRATOR_INCOMPATIBLE | מחלקת רץ הבדיקה שצוינה על ידי המשתמש או בקובץ המניפסט של ה-APK לבדיקה אינה תואמת ל-Android Test Orchestrator. Orchestrator תואם רק ל-AndroidJUnitRunner גרסה 1.1 ומעלה. ניתן להשבית את Orchestrator באמצעות DO_NOT_USE_ORCHESTRATOR OrchestratorOption. |
NO_TEST_RUNNER_CLASS | ה-APK של הבדיקה אינו מכיל את מחלקת הרץ לבדיקה שצוינה על ידי המשתמש או בקובץ המניפסט. זה יכול להיגרם מאחת מהסיבות הבאות:
|
NO_LAUNCHER_ACTIVITY | לא ניתן למצוא פעילות משגר ראשי. |
FORBIDDEN_PERMISSIONS | האפליקציה מצהירה על הרשאה אחת או יותר שאינן מותרות. |
INVALID_ROBO_DIRECTIVES | יש התנגשות ב-roboDirectives שסופקו. |
INVALID_RESOURCE_NAME | יש שם משאב אחד לא חוקי לפחות בהנחיות הרובו שסופקו |
INVALID_DIRECTIVE_ACTION | הגדרה לא חוקית של פעולה בהנחיות רובו (למשל פעולת לחיצה או התעלמות כוללת שדה טקסט קלט) |
TEST_LOOP_INTENT_FILTER_NOT_FOUND | אין מסנן כוונת לולאת בדיקה, או שהמסנן שניתן אינו מעוצב בצורה נכונה. |
SCENARIO_LABEL_NOT_DECLARED | הבקשה מכילה תווית תרחיש שלא הוכרזה במניפסט. |
SCENARIO_LABEL_MALFORMED | אירעה שגיאה בעת ניתוח ערך של תווית. |
SCENARIO_NOT_DECLARED | הבקשה מכילה מספר תרחיש שלא הוכרז במניפסט. |
DEVICE_ADMIN_RECEIVER | אפליקציות של מנהל מכשיר אינן מותרות. |
MALFORMED_XC_TEST_ZIP | ה-XCTest המכווץ היה פגום. ה-zip לא הכיל קובץ .xctestrun אחד ואת התוכן של ספריית DerivedData/Build/Products. |
BUILT_FOR_IOS_SIMULATOR | ה-XCTest המכווץ נבנה עבור סימולטור iOS ולא עבור מכשיר פיזי. |
NO_TESTS_IN_XC_TEST_ZIP | קובץ .xctestrun לא ציין יעדי בדיקה כלשהם. |
USE_DESTINATION_ARTIFACTS | אחד או יותר מיעדי הבדיקה המוגדרים בקובץ .xctestrun מציינים את "UseDestinationArtifacts", דבר שאינו מותר. |
TEST_NOT_APP_HOSTED | בדיקות XC המופעלות על מכשירים פיזיים חייבות להיות "IsAppHostedTestBundle" == "true" בקובץ xctestrun. |
PLIST_CANNOT_BE_PARSED | לא ניתן היה לנתח קובץ Info.plist ב-XCTest zip. |
TEST_ONLY_APK | ה-APK מסומן כ-"testOnly". הוצא משימוש ואינו בשימוש כעת. |
MALFORMED_IPA | לא ניתן היה לנתח את ה-IPA של הקלט. |
MISSING_URL_SCHEME | האפליקציה לא רושמת את ערכת כתובת האתר של לולאת המשחק. |
MALFORMED_APP_BUNDLE | לא ניתן היה לעבד את חבילת האפליקציות של iOS (.app). |
NO_CODE_APK | APK אינו מכיל קוד. ראה גם https://developer.android.com/guide/topics/manifest/application-element.html#code |
INVALID_INPUT_APK | או שנתיב ה-APK לקלט היה שגוי, קובץ ה-APK אינו קיים, או שלמשתמש אין הרשאה לגשת לקובץ ה-APK. |
INVALID_APK_PREVIEW_SDK | APK בנוי עבור SDK תצוגה מקדימה שאינה נתמכת |
MATRIX_TOO_LARGE | המטריצה התרחבה והכילה יותר מדי הוצאות להורג. |
TEST_QUOTA_EXCEEDED | אין מספיק מכסת בדיקות כדי להפעיל את הביצועים במטריצה הזו. |
SERVICE_NOT_ACTIVATED | ממשק API של שירות ענן לא מופעל. ראה: https://firebase.google.com/docs/test-lab/android/continuous#requirements |
UNKNOWN_PERMISSION_ERROR | הייתה בעיית הרשאה לא ידועה בהפעלת בדיקה זו. |
סיכום תוצאה
סיכום תוצאות למטריצת מבחן מוגמרת.
תקצירים | |
---|---|
OUTCOME_SUMMARY_UNSPECIFIED | אל תשתמש. לגירסת פרוטו בלבד. |
SUCCESS | ריצת מטריצת הבדיקה הייתה מוצלחת, למשל:
|
FAILURE | ריצה נכשלה, למשל:
|
INCONCLUSIVE | משהו לא צפוי קרה. הריצה עדיין אמורה להיחשב כלא מוצלחת, אך ככל הנראה מדובר בבעיה חולפת והפעלה מחדש של הבדיקה עשויה להצליח. |
SKIPPED | כל הבדיקות דילגו, למשל:
|
שיטות | |
---|---|
| מבטל הוצאות לבדיקה לא גמורים במטריקס מבחן. |
| יוצר ומנהל מטריצה של בדיקות על פי המפרט הנתון. |
| בודק את מצב מטריצת הבדיקה וההוצאות להורג לאחר יצירתם. |