REST Resource: projects.histories.executions

Recurso: Ejecución

Una Ejecución representa una colección de Pasos. Por ejemplo, podría representar: - una prueba móvil ejecutada en una variedad de configuraciones de dispositivos - un trabajo de jenkins con un paso de compilación seguido de un paso de prueba

El tamaño máximo de un mensaje de ejecución es de 1 MiB.

Una ejecución se puede actualizar hasta que su estado se establezca en COMPLETO, momento en el que se vuelve inmutable.

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

string

Un identificador único dentro de un historial para esta ejecución.

Devuelve INVALID_ARGUMENT si la persona que llama establece o sobrescribe este campo.

  • En respuesta siempre establecido
  • En solicitud de creación/actualización: nunca establecer
state

enum ( State )

El estado inicial es IN_PROGRESS.

Las únicas transiciones de estado legales son de IN_PROGRESS a COMPLETE.

Se devolverá PRECONDITION_FAILED si se solicita una transición no válida.

El estado solo se puede establecer en COMPLETO una vez. Se devolverá FAILED_PRECONDITION si el estado se establece en COMPLETE varias veces.

Si el estado se establece en COMPLETO, todos los pasos en curso dentro de la ejecución se establecerán como COMPLETOS. Si no se establece el resultado del paso, el resultado se establecerá como NO CONCLUYENTE.

  • En respuesta siempre establecido
  • En solicitud de creación/actualización: opcional
creationTime

object ( Timestamp )

La hora en que se creó la Ejecución.

Este valor se establecerá automáticamente cuando se llame a executes.create.

  • En respuesta: siempre establecido
  • En solicitud de creación/actualización: nunca establecer
completionTime

object ( Timestamp )

La hora en que el estado de ejecución pasó a COMPLETE.

Este valor se establecerá automáticamente cuando el estado cambie a COMPLETO.

  • En respuesta: establezca si el estado de ejecución es COMPLETO.
  • En solicitud de creación/actualización: nunca establecer
outcome

object ( Outcome )

Clasificar el resultado, por ejemplo en ÉXITO o FALLO

  • En respuesta: presente si se establece mediante una solicitud de creación/actualización
  • En solicitud de creación/actualización: opcional
dimensionDefinitions[]

object ( MatrixDimensionDefinition )

Las dimensiones a lo largo de las cuales pueden variar los diferentes pasos en esta ejecución. Esto debe permanecer fijo durante la vida de la ejecución.

Devuelve INVALID_ARGUMENT si este campo se establece en una solicitud de actualización.

Devuelve INVALID_ARGUMENT si aparece el mismo nombre en más de una dimension_definition.

Devuelve INVALID_ARGUMENT si el tamaño de la lista es superior a 100.

  • En respuesta: presente si lo establece create
  • En crear solicitud: opcional
  • En la solicitud de actualización: nunca configurar
specification

object ( Specification )

Información ligera sobre la solicitud de ejecución.

  • En respuesta: presente si lo establece create
  • En crear: opcional
  • En actualización: opcional
testExecutionMatrixId

string

Id. de TestExecution Matrix que utiliza TestExecutionService.

  • En respuesta: presente si lo establece create
  • En crear: opcional
  • En actualización: nunca configurar

MatrizDimensiónDefinición

Este tipo no tiene campos.

Una dimensión de la matriz de diferentes corridas de un paso.

Especificación

Los detalles sobre cómo ejecutar la ejecución.

Representación 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.
}
Campos

specification de campo de unión.

specification puede ser solo una de las siguientes:

androidTest

object ( AndroidTest )

Una especificación de ejecución de prueba móvil de Android.

iosTest

object ( IosTest )

Una especificación de ejecución de prueba móvil de iOS.

Prueba de Android

Una especificación de prueba móvil de Android.

Representación 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.
}
Campos
androidAppInfo

object ( AndroidAppInfo )

Información sobre la aplicación bajo prueba.

testTimeout

object ( Duration )

Tiempo máximo que se permite ejecutar una prueba antes de que se cancele automáticamente.

test de campo de unión.

test puede ser solo una de las siguientes:

androidInstrumentationTest

object ( AndroidInstrumentationTest )

Una prueba de instrumentación de Android.

androidRoboTest

object ( AndroidRoboTest )

Una prueba de robo de Android.

androidTestLoop

object ( AndroidTestLoop )

Un bucle de prueba de Android.

AndroidAppInfo

Información de la aplicación de Android.

Representación JSON
{
  "name": string,
  "packageName": string,
  "versionName": string,
  "versionCode": string
}
Campos
name

string

El nombre de la aplicación. Opcional

packageName

string

El nombre del paquete de la aplicación. Requerido.

versionName

string

El nombre de la versión de la aplicación. Opcional.

versionCode

string

El código de la versión interna de la aplicación. Opcional.

AndroidInstrumentationTest

Una prueba de una aplicación de Android que puede controlar un componente de Android independientemente de su ciclo de vida normal.

Consulte https://developer.android.com/training/testing/fundamentals para obtener más información sobre los tipos de pruebas de Android.

Representación JSON
{
  "testPackageId": string,
  "testRunnerClass": string,
  "testTargets": [
    string
  ],
  "useOrchestrator": boolean
}
Campos
testPackageId

string

El paquete java para que se ejecute la prueba. Requerido

testRunnerClass

string

La clase InstrumentationTestRunner. Requerido

testTargets[]

string

Cada destino debe estar completamente calificado con el nombre del paquete o el nombre de la clase, en uno de estos formatos: - "package packageName" - "class packageName.class_name" - "class packageName.class_name#method_name"

Si está vacío, se ejecutarán todos los objetivos del módulo.

useOrchestrator

boolean

La bandera indica si se usará Android Test Orchestrator para ejecutar la prueba o no.

AndroidRoboPrueba

Una prueba de una aplicación de Android que explora la aplicación en un dispositivo Android virtual o físico, encontrando culpables y bloqueos a medida que avanza.

Representación JSON
{
  "appInitialActivity": string,
  "bootstrapPackageId": string,
  "bootstrapRunnerClass": string,
  "maxDepth": integer,
  "maxSteps": integer
}
Campos
appInitialActivity

string

La actividad inicial que debe usarse para iniciar la aplicación. Opcional

bootstrapPackageId

string

El paquete Java para el programa de arranque. Opcional

bootstrapRunnerClass

string

La clase runner para el bootstrap. Opcional

maxDepth

integer

La profundidad máxima de la pila transversal que Robo puede explorar. Opcional

maxSteps

integer

El número máximo de pasos/acciones que Robo puede ejecutar. El valor predeterminado es sin límite (0). Opcional

Bucle de prueba de Android

Este tipo no tiene campos.

Los bucles de prueba son pruebas que puede iniciar la propia aplicación, determinando cuándo ejecutarse al escuchar una intención.

IosTest

Una especificación de prueba móvil iOS

Representación 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.
}
Campos
iosAppInfo

object ( IosAppInfo )

Información sobre la aplicación bajo prueba.

testTimeout

object ( Duration )

Tiempo máximo que se permite ejecutar una prueba antes de que se cancele automáticamente.

test de campo de unión.

test puede ser solo una de las siguientes:

iosXcTest

object ( IosXcTest )

Una prueba XCT de iOS.

iosTestLoop

object ( IosTestLoop )

Un bucle de prueba de iOS.

iosRoboTest

object ( IosRoboTest )

Una prueba de iOS Robo.

IosAppInfo

información de la aplicación iOS

Representación JSON
{
  "name": string
}
Campos
name

string

El nombre de la aplicación. Requerido

Prueba IosXc

Una prueba de una aplicación iOS que utiliza el marco XCTest.

Representación JSON
{
  "bundleId": string,
  "xcodeVersion": string
}
Campos
bundleId

string

ID de paquete de la aplicación.

xcodeVersion

string

Versión de Xcode con la que se ejecutó la prueba.

Bucle de prueba de Ios

Una prueba de bucle de juego de una aplicación de iOS.

Representación JSON
{
  "bundleId": string
}
Campos
bundleId

string

ID de paquete de la aplicación.

IosRoboPrueba

Este tipo no tiene campos.

Una prueba de Robo para una aplicación de iOS.

Métodos

create

Crea una ejecución.

get

Obtiene una ejecución.

list

Enumera las ejecuciones para un historial dado.

patch

Actualiza una ejecución existente con la entidad parcial proporcionada.