REST Resource: projects.histories.executions

Sumber: Eksekusi

Eksekusi mewakili kumpulan Langkah. Misalnya, ini dapat mewakili: - pengujian seluler yang dijalankan di berbagai konfigurasi perangkat - tugas jenkins dengan langkah pembuatan diikuti dengan langkah pengujian

Ukuran maksimum pesan eksekusi adalah 1 MiB.

Eksekusi dapat diperbarui hingga statusnya disetel ke COMPLETE dan status tersebut menjadi tidak dapat diubah.

Representasi JSON
{
  "executionId": string,
  "state": enum (State),
  "creationTime": {
    object (Timestamp)
  },
  "completionTime": {
    object (Timestamp)
  },
  "outcome": {
    object (Outcome)
  },
  "dimensionDefinitions": [
    {
      object (MatrixDimensionDefinition)
    }
  ],
  "specification": {
    object (Specification)
  },
  "testExecutionMatrixId": string
}
Bidang
executionId

string

Pengidentifikasi unik dalam Riwayat untuk Eksekusi ini.

Mengembalikan INVALID_ARGUMENT jika bidang ini disetel atau ditimpa oleh pemanggil.

  • Responsnya selalu ditetapkan
  • Dalam permintaan buat/perbarui: tidak pernah disetel
state

enum ( State )

Keadaan awal adalah IN_PROGRESS.

Satu-satunya transisi status yang sah adalah dari IN_PROGRESS ke COMPLETE.

PRECONDITION_FAILED akan dikembalikan jika diminta transisi yang tidak valid.

Status hanya dapat disetel ke COMPLETE satu kali. FAILED_PRECONDITION akan dikembalikan jika status disetel ke COMPLETE beberapa kali.

Jika status disetel ke SELESAI, semua langkah yang sedang berlangsung dalam eksekusi akan disetel sebagai SELESAI. Jika hasil dari langkah tersebut tidak ditetapkan, hasilnya akan ditetapkan ke INCONCLUSIVE.

  • Responsnya selalu ditetapkan
  • Dalam permintaan buat/perbarui: opsional
creationTime

object ( Timestamp )

Waktu ketika Eksekusi dibuat.

Nilai ini akan ditetapkan secara otomatis ketika eksekusi.buat dipanggil.

  • Sebagai tanggapan: selalu disetel
  • Dalam permintaan buat/perbarui: tidak pernah disetel
completionTime

object ( Timestamp )

Waktu ketika status Eksekusi dialihkan ke SELESAI.

Nilai ini akan ditetapkan secara otomatis ketika status bertransisi ke COMPLETE.

  • Sebagai tanggapan: atur jika status eksekusi SELESAI.
  • Dalam permintaan buat/perbarui: tidak pernah disetel
outcome

object ( Outcome )

Klasifikasikan hasilnya, misalnya SUKSES atau KEGAGALAN

  • Sebagai tanggapan: hadir jika diatur oleh permintaan buat/perbarui
  • Dalam permintaan buat/perbarui: opsional
dimensionDefinitions[]

object ( MatrixDimensionDefinition )

Dimensi sepanjang langkah-langkah berbeda dalam pelaksanaan ini mungkin berbeda-beda. Hal ini harus tetap ditetapkan selama masa eksekusi.

Mengembalikan INVALID_ARGUMENT jika bidang ini disetel dalam permintaan pembaruan.

Mengembalikan INVALID_ARGUMENT jika nama yang sama muncul di lebih dari satu definisi_dimensi.

Mengembalikan INVALID_ARGUMENT jika ukuran daftar lebih dari 100.

  • Sebagai tanggapan: hadir jika disetel oleh buat
  • Dalam permintaan pembuatan: opsional
  • Dalam permintaan pembaruan: tidak pernah disetel
specification

object ( Specification )

Informasi ringan tentang permintaan eksekusi.

  • Sebagai tanggapan: hadir jika disetel oleh buat
  • Dalam pembuatan: opsional
  • Dalam pembaruan: opsional
testExecutionMatrixId

string

ID Matriks TestExecution yang digunakan TestExecutionService.

  • Sebagai tanggapan: hadir jika disetel oleh buat
  • Dalam pembuatan: opsional
  • Dalam pembaruan: tidak pernah disetel

Definisi Dimensi Matriks

Tipe ini tidak memiliki kolom.

Satu dimensi matriks dari proses langkah yang berbeda.

Spesifikasi

Detail tentang cara menjalankan eksekusi.

Representasi JSON
{

  // Union field specification can be only one of the following:
  "androidTest": {
    object (AndroidTest)
  },
  "iosTest": {
    object (IosTest)
  }
  // End of list of possible types for union field specification.
}
Bidang

specification bidang serikat pekerja.

specification hanya dapat berupa salah satu dari berikut ini:

androidTest

object ( AndroidTest )

Spesifikasi eksekusi pengujian seluler Android.

iosTest

object ( IosTest )

Spesifikasi eksekusi pengujian seluler iOS.

Tes Android

Spesifikasi pengujian seluler Android.

Representasi JSON
{
  "androidAppInfo": {
    object (AndroidAppInfo)
  },
  "testTimeout": {
    object (Duration)
  },

  // Union field test can be only one of the following:
  "androidInstrumentationTest": {
    object (AndroidInstrumentationTest)
  },
  "androidRoboTest": {
    object (AndroidRoboTest)
  },
  "androidTestLoop": {
    object (AndroidTestLoop)
  }
  // End of list of possible types for union field test.
}
Bidang
androidAppInfo

object ( AndroidAppInfo )

Informasi tentang aplikasi yang sedang diuji.

testTimeout

object ( Duration )

Waktu maksimum tes diizinkan untuk dijalankan sebelum dibatalkan secara otomatis.

test lapangan serikat pekerja.

test hanya dapat berupa salah satu dari berikut ini:

androidInstrumentationTest

object ( AndroidInstrumentationTest )

Tes instrumentasi Android.

androidRoboTest

object ( AndroidRoboTest )

Tes robo Android.

androidTestLoop

object ( AndroidTestLoop )

Lingkaran pengujian Android.

AndroidAppInfo

Informasi aplikasi Android.

Representasi JSON
{
  "name": string,
  "packageName": string,
  "versionName": string,
  "versionCode": string
}
Bidang
name

string

Nama aplikasi. Opsional

packageName

string

Nama paket aplikasi. Diperlukan.

versionName

string

Nama versi aplikasi. Opsional.

versionCode

string

Kode versi internal aplikasi. Opsional.

Tes Instrumentasi Android

Pengujian aplikasi Android yang dapat mengontrol komponen Android secara independen dari siklus hidup normalnya.

Lihat https://developer.android.com/training/testing/fundamentals untuk informasi selengkapnya tentang jenis pengujian Android.

Representasi JSON
{
  "testPackageId": string,
  "testRunnerClass": string,
  "testTargets": [
    string
  ],
  "useOrchestrator": boolean
}
Bidang
testPackageId

string

Paket java untuk pengujian yang akan dijalankan. Diperlukan

testRunnerClass

string

Kelas InstrumentationTestRunner. Diperlukan

testTargets[]

string

Setiap target harus sepenuhnya memenuhi syarat dengan nama paket atau nama kelas, dalam salah satu format berikut: - "nama paket paket" - "nama paket kelas.nama_kelas" - "nama paket kelas.nama_kelas#nama_metode"

Jika kosong, semua target dalam modul akan dijalankan.

useOrchestrator

boolean

Bendera ini menunjukkan apakah Android Test Orchestrator akan digunakan untuk menjalankan pengujian atau tidak.

AndroidRoboTest

Pengujian aplikasi Android yang menjelajahi aplikasi pada perangkat Android virtual atau fisik, menemukan penyebab dan mengalami error saat dijalankan.

Representasi JSON
{
  "appInitialActivity": string,
  "bootstrapPackageId": string,
  "bootstrapRunnerClass": string,
  "maxDepth": integer,
  "maxSteps": integer
}
Bidang
appInitialActivity

string

Aktivitas awal yang harus digunakan untuk memulai aplikasi. Opsional

bootstrapPackageId

string

Paket java untuk bootstrap. Opsional

bootstrapRunnerClass

string

Kelas pelari untuk bootstrap. Opsional

maxDepth

integer

Kedalaman maksimum tumpukan traversal yang dapat dijelajahi Robo. Opsional

maxSteps

integer

Jumlah maksimal langkah/tindakan yang dapat dijalankan Robo. Defaultnya adalah tanpa batas (0). Opsional

AndroidTestLoop

Tipe ini tidak memiliki kolom.

Test Loops adalah pengujian yang dapat diluncurkan oleh aplikasi itu sendiri, menentukan kapan harus dijalankan dengan mendengarkan suatu maksud.

Tes Ios

Spesifikasi pengujian seluler iOS

Representasi JSON
{
  "iosAppInfo": {
    object (IosAppInfo)
  },
  "testTimeout": {
    object (Duration)
  },

  // Union field test can be only one of the following:
  "iosXcTest": {
    object (IosXcTest)
  },
  "iosTestLoop": {
    object (IosTestLoop)
  },
  "iosRoboTest": {
    object (IosRoboTest)
  }
  // End of list of possible types for union field test.
}
Bidang
iosAppInfo

object ( IosAppInfo )

Informasi tentang aplikasi yang sedang diuji.

testTimeout

object ( Duration )

Waktu maksimum tes diizinkan untuk dijalankan sebelum dibatalkan secara otomatis.

test lapangan serikat pekerja.

test hanya dapat berupa salah satu dari berikut ini:

iosXcTest

object ( IosXcTest )

Tes XCT iOS.

iosTestLoop

object ( IosTestLoop )

Perulangan pengujian iOS.

iosRoboTest

object ( IosRoboTest )

Tes Robo iOS.

IosAppInfo

informasi aplikasi iOS

Representasi JSON
{
  "name": string
}
Bidang
name

string

Nama aplikasi. Diperlukan

Tes IosXc

Pengujian aplikasi iOS yang menggunakan framework XCTest.

Representasi JSON
{
  "bundleId": string,
  "xcodeVersion": string
}
Bidang
bundleId

string

Bundel ID aplikasi.

xcodeVersion

string

Versi Xcode tempat pengujian dijalankan.

IosTestLoop

Tes loop permainan dari aplikasi iOS.

Representasi JSON
{
  "bundleId": string
}
Bidang
bundleId

string

Bundel ID aplikasi.

IosRoboTest

Tipe ini tidak memiliki kolom.

Tes Robo untuk aplikasi iOS.

Metode

create

Membuat Eksekusi.

get

Mendapat Eksekusi.

list

Mencantumkan Eksekusi untuk Riwayat tertentu.

patch

Memperbarui Eksekusi yang ada dengan entitas parsial yang disediakan.
,

Sumber: Eksekusi

Eksekusi mewakili kumpulan Langkah. Misalnya, ini dapat mewakili: - pengujian seluler yang dijalankan di berbagai konfigurasi perangkat - tugas jenkins dengan langkah pembuatan diikuti dengan langkah pengujian

Ukuran maksimum pesan eksekusi adalah 1 MiB.

Eksekusi dapat diperbarui hingga statusnya disetel ke COMPLETE dan status tersebut menjadi tidak dapat diubah.

Representasi JSON
{
  "executionId": string,
  "state": enum (State),
  "creationTime": {
    object (Timestamp)
  },
  "completionTime": {
    object (Timestamp)
  },
  "outcome": {
    object (Outcome)
  },
  "dimensionDefinitions": [
    {
      object (MatrixDimensionDefinition)
    }
  ],
  "specification": {
    object (Specification)
  },
  "testExecutionMatrixId": string
}
Bidang
executionId

string

Pengidentifikasi unik dalam Riwayat untuk Eksekusi ini.

Mengembalikan INVALID_ARGUMENT jika bidang ini disetel atau ditimpa oleh pemanggil.

  • Responsnya selalu ditetapkan
  • Dalam permintaan buat/perbarui: tidak pernah disetel
state

enum ( State )

Keadaan awal adalah IN_PROGRESS.

Satu-satunya transisi status yang sah adalah dari IN_PROGRESS ke COMPLETE.

PRECONDITION_FAILED akan dikembalikan jika diminta transisi yang tidak valid.

Status hanya dapat disetel ke COMPLETE satu kali. FAILED_PRECONDITION akan dikembalikan jika status disetel ke COMPLETE beberapa kali.

Jika status disetel ke SELESAI, semua langkah yang sedang berlangsung dalam eksekusi akan disetel sebagai SELESAI. Jika hasil dari langkah tersebut tidak ditetapkan, hasilnya akan ditetapkan ke INCONCLUSIVE.

  • Responsnya selalu ditetapkan
  • Dalam permintaan buat/perbarui: opsional
creationTime

object ( Timestamp )

Waktu ketika Eksekusi dibuat.

Nilai ini akan ditetapkan secara otomatis ketika eksekusi.buat dipanggil.

  • Sebagai tanggapan: selalu disetel
  • Dalam permintaan buat/perbarui: tidak pernah disetel
completionTime

object ( Timestamp )

Waktu ketika status Eksekusi dialihkan ke SELESAI.

Nilai ini akan ditetapkan secara otomatis ketika status bertransisi ke COMPLETE.

  • Sebagai tanggapan: atur jika status eksekusi SELESAI.
  • Dalam permintaan buat/perbarui: tidak pernah disetel
outcome

object ( Outcome )

Klasifikasikan hasilnya, misalnya SUKSES atau KEGAGALAN

  • Sebagai tanggapan: hadir jika diatur oleh permintaan buat/perbarui
  • Dalam permintaan buat/perbarui: opsional
dimensionDefinitions[]

object ( MatrixDimensionDefinition )

Dimensi sepanjang langkah-langkah berbeda dalam pelaksanaan ini mungkin berbeda-beda. Hal ini harus tetap ditetapkan selama masa eksekusi.

Mengembalikan INVALID_ARGUMENT jika bidang ini disetel dalam permintaan pembaruan.

Mengembalikan INVALID_ARGUMENT jika nama yang sama muncul di lebih dari satu definisi_dimensi.

Mengembalikan INVALID_ARGUMENT jika ukuran daftar lebih dari 100.

  • Sebagai tanggapan: hadir jika disetel oleh buat
  • Dalam permintaan pembuatan: opsional
  • Dalam permintaan pembaruan: tidak pernah disetel
specification

object ( Specification )

Informasi ringan tentang permintaan eksekusi.

  • Sebagai tanggapan: hadir jika disetel oleh buat
  • Dalam pembuatan: opsional
  • Dalam pembaruan: opsional
testExecutionMatrixId

string

ID Matriks TestExecution yang digunakan TestExecutionService.

  • Sebagai tanggapan: hadir jika disetel oleh buat
  • Dalam pembuatan: opsional
  • Dalam pembaruan: tidak pernah disetel

Definisi Dimensi Matriks

Tipe ini tidak memiliki kolom.

Satu dimensi matriks dari proses langkah yang berbeda.

Spesifikasi

Detail tentang cara menjalankan eksekusi.

Representasi JSON
{

  // Union field specification can be only one of the following:
  "androidTest": {
    object (AndroidTest)
  },
  "iosTest": {
    object (IosTest)
  }
  // End of list of possible types for union field specification.
}
Bidang

specification bidang serikat pekerja.

specification hanya dapat berupa salah satu dari berikut ini:

androidTest

object ( AndroidTest )

Spesifikasi eksekusi pengujian seluler Android.

iosTest

object ( IosTest )

Spesifikasi eksekusi pengujian seluler iOS.

Tes Android

Spesifikasi pengujian seluler Android.

Representasi JSON
{
  "androidAppInfo": {
    object (AndroidAppInfo)
  },
  "testTimeout": {
    object (Duration)
  },

  // Union field test can be only one of the following:
  "androidInstrumentationTest": {
    object (AndroidInstrumentationTest)
  },
  "androidRoboTest": {
    object (AndroidRoboTest)
  },
  "androidTestLoop": {
    object (AndroidTestLoop)
  }
  // End of list of possible types for union field test.
}
Bidang
androidAppInfo

object ( AndroidAppInfo )

Informasi tentang aplikasi yang sedang diuji.

testTimeout

object ( Duration )

Waktu maksimum tes diizinkan untuk dijalankan sebelum dibatalkan secara otomatis.

test lapangan serikat pekerja.

test hanya dapat berupa salah satu dari berikut ini:

androidInstrumentationTest

object ( AndroidInstrumentationTest )

Tes instrumentasi Android.

androidRoboTest

object ( AndroidRoboTest )

Tes robo Android.

androidTestLoop

object ( AndroidTestLoop )

Lingkaran pengujian Android.

AndroidAppInfo

Informasi aplikasi Android.

Representasi JSON
{
  "name": string,
  "packageName": string,
  "versionName": string,
  "versionCode": string
}
Bidang
name

string

Nama aplikasi. Opsional

packageName

string

Nama paket aplikasi. Diperlukan.

versionName

string

Nama versi aplikasi. Opsional.

versionCode

string

Kode versi internal aplikasi. Opsional.

Tes Instrumentasi Android

Pengujian aplikasi Android yang dapat mengontrol komponen Android secara independen dari siklus hidup normalnya.

Lihat https://developer.android.com/training/testing/fundamentals untuk informasi selengkapnya tentang jenis pengujian Android.

Representasi JSON
{
  "testPackageId": string,
  "testRunnerClass": string,
  "testTargets": [
    string
  ],
  "useOrchestrator": boolean
}
Bidang
testPackageId

string

Paket java untuk pengujian yang akan dijalankan. Diperlukan

testRunnerClass

string

Kelas InstrumentationTestRunner. Diperlukan

testTargets[]

string

Setiap target harus sepenuhnya memenuhi syarat dengan nama paket atau nama kelas, dalam salah satu format berikut: - "nama paket paket" - "nama paket kelas.nama_kelas" - "nama paket kelas.nama_kelas#nama_metode"

Jika kosong, semua target dalam modul akan dijalankan.

useOrchestrator

boolean

Bendera ini menunjukkan apakah Android Test Orchestrator akan digunakan untuk menjalankan pengujian atau tidak.

AndroidRoboTest

Pengujian aplikasi Android yang menjelajahi aplikasi pada perangkat Android virtual atau fisik, menemukan penyebab dan mengalami error saat dijalankan.

Representasi JSON
{
  "appInitialActivity": string,
  "bootstrapPackageId": string,
  "bootstrapRunnerClass": string,
  "maxDepth": integer,
  "maxSteps": integer
}
Bidang
appInitialActivity

string

Aktivitas awal yang harus digunakan untuk memulai aplikasi. Opsional

bootstrapPackageId

string

Paket java untuk bootstrap. Opsional

bootstrapRunnerClass

string

Kelas pelari untuk bootstrap. Opsional

maxDepth

integer

Kedalaman maksimum tumpukan traversal yang dapat dijelajahi Robo. Opsional

maxSteps

integer

Jumlah maksimal langkah/tindakan yang dapat dijalankan Robo. Defaultnya adalah tanpa batas (0). Opsional

AndroidTestLoop

Tipe ini tidak memiliki kolom.

Test Loops adalah pengujian yang dapat diluncurkan oleh aplikasi itu sendiri, menentukan kapan harus dijalankan dengan mendengarkan suatu maksud.

Tes Ios

Spesifikasi pengujian seluler iOS

Representasi JSON
{
  "iosAppInfo": {
    object (IosAppInfo)
  },
  "testTimeout": {
    object (Duration)
  },

  // Union field test can be only one of the following:
  "iosXcTest": {
    object (IosXcTest)
  },
  "iosTestLoop": {
    object (IosTestLoop)
  },
  "iosRoboTest": {
    object (IosRoboTest)
  }
  // End of list of possible types for union field test.
}
Bidang
iosAppInfo

object ( IosAppInfo )

Informasi tentang aplikasi yang sedang diuji.

testTimeout

object ( Duration )

Waktu maksimum tes diizinkan untuk dijalankan sebelum dibatalkan secara otomatis.

test lapangan serikat pekerja.

test hanya dapat berupa salah satu dari berikut ini:

iosXcTest

object ( IosXcTest )

Tes XCT iOS.

iosTestLoop

object ( IosTestLoop )

Perulangan pengujian iOS.

iosRoboTest

object ( IosRoboTest )

Tes Robo iOS.

IosAppInfo

informasi aplikasi iOS

Representasi JSON
{
  "name": string
}
Bidang
name

string

Nama aplikasi. Diperlukan

Tes IosXc

Pengujian aplikasi iOS yang menggunakan framework XCTest.

Representasi JSON
{
  "bundleId": string,
  "xcodeVersion": string
}
Bidang
bundleId

string

Bundel ID aplikasi.

xcodeVersion

string

Versi Xcode tempat pengujian dijalankan.

IosTestLoop

Tes loop permainan dari aplikasi iOS.

Representasi JSON
{
  "bundleId": string
}
Bidang
bundleId

string

Bundel ID aplikasi.

IosRoboTest

Tipe ini tidak memiliki kolom.

Tes Robo untuk aplikasi iOS.

Metode

create

Membuat Eksekusi.

get

Mendapat Eksekusi.

list

Mencantumkan Eksekusi untuk Riwayat tertentu.

patch

Memperbarui Eksekusi yang ada dengan entitas parsial yang disediakan.