REST Resource: projects.histories.executions

자원: 실행

실행은 단계 모음을 나타냅니다. 예를 들어 다음을 나타낼 수 있습니다. - 다양한 장치 구성에서 실행되는 모바일 테스트 - 빌드 단계와 테스트 단계가 포함된 Jenkins 작업

실행 메시지의 최대 크기는 1MiB입니다.

실행은 상태가 COMPLETE로 설정되어 변경할 수 없게 될 때까지 업데이트될 수 있습니다.

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

string

이 실행에 대한 기록 내의 고유 식별자입니다.

호출자가 이 필드를 설정하거나 덮어쓴 경우 INVALID_ARGUMENT를 반환합니다.

  • 응답으로 항상 설정됨
  • 생성/업데이트 요청 시: 설정하지 않음
state

enum ( State )

초기 상태는 IN_PROGRESS입니다.

유일한 합법적인 상태 전환은 IN_PROGRESS에서 COMPLETE로의 전환입니다.

잘못된 전환이 요청되면 PRECONDITION_FAILED가 반환됩니다.

상태는 한 번만 COMPLETE로 설정할 수 있습니다. 상태가 여러 번 COMPLETE로 설정된 경우 FAILED_PRECONDITION이 반환됩니다.

상태가 COMPLETE로 설정되면 실행 내에서 진행 중인 모든 단계가 COMPLETE로 설정됩니다. 단계의 결과가 설정되지 않은 경우 결과는 INCONCLUSIVE로 설정됩니다.

  • 응답으로 항상 설정됨
  • 생성/업데이트 요청 시: 선택 사항
creationTime

object ( Timestamp )

실행이 생성된 시간입니다.

이 값은 Executions.create가 호출될 때 자동으로 설정됩니다.

  • 응답: 항상 설정됨
  • 생성/업데이트 요청 시: 설정하지 않음
completionTime

object ( Timestamp )

Execution 상태가 COMPLETE로 전환된 시간입니다.

이 값은 상태가 COMPLETE로 전환될 때 자동으로 설정됩니다.

  • 응답: 실행 상태가 COMPLETE인 경우 설정됩니다.
  • 생성/업데이트 요청 시: 설정하지 않음
outcome

object ( Outcome )

결과를 SUCCESS 또는 FAILURE 등으로 분류합니다.

  • 응답: 생성/업데이트 요청에 의해 설정된 경우 존재합니다.
  • 생성/업데이트 요청 시: 선택 사항
dimensionDefinitions[]

object ( MatrixDimensionDefinition )

이 실행의 다양한 단계에 따라 크기가 달라질 수 있습니다. 이는 실행 기간 동안 고정된 상태로 유지되어야 합니다.

이 필드가 업데이트 요청에 설정된 경우 INVALID_ARGUMENT를 반환합니다.

둘 이상의 차원 정의에 동일한 이름이 나타나면 INVALID_ARGUMENT를 반환합니다.

목록의 크기가 100을 초과하면 INVALID_ARGUMENT를 반환합니다.

  • 응답: create로 설정된 경우 존재합니다.
  • 생성 요청 시: 선택 사항
  • 업데이트 요청 시: 설정되지 않음
specification

object ( Specification )

실행 요청에 대한 간략한 정보입니다.

  • 응답: create로 설정된 경우 존재합니다.
  • 생성 시: 선택 사항
  • 업데이트 중: 선택 사항
testExecutionMatrixId

string

TestExecutionService가 사용하는 TestExecution 매트릭스 ID입니다.

  • 응답: create로 설정된 경우 존재합니다.
  • 생성 시: 선택 사항
  • 업데이트 중: 설정되지 않음

MatrixDimensionDefinition

이 유형에는 필드가 없습니다.

한 단계의 다양한 실행으로 구성된 행렬의 한 차원입니다.

사양

실행을 실행하는 방법에 대한 세부정보입니다.

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.
}
필드

Union 필드 specification .

specification 다음 중 하나만 될 수 있습니다.

androidTest

object ( AndroidTest )

Android 모바일 테스트 실행 사양입니다.

iosTest

object ( IosTest )

iOS 모바일 테스트 실행 사양입니다.

Android테스트

Android 모바일 테스트 사양입니다.

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.
}
필드
androidAppInfo

object ( AndroidAppInfo )

테스트 중인 애플리케이션에 대한 정보입니다.

testTimeout

object ( Duration )

자동으로 취소되기 전에 테스트 실행이 허용되는 최대 시간입니다.

유니온 필드 test .

test 다음 중 하나만 가능합니다.

androidInstrumentationTest

object ( AndroidInstrumentationTest )

Android 계측 테스트입니다.

androidRoboTest

object ( AndroidRoboTest )

안드로이드 로보 테스트.

androidTestLoop

object ( AndroidTestLoop )

Android 테스트 루프.

Android앱정보

안드로이드 앱 정보.

JSON 표현
{
  "name": string,
  "packageName": string,
  "versionName": string,
  "versionCode": string
}
필드
name

string

앱의 이름입니다. 선택 과목

packageName

string

앱의 패키지 이름입니다. 필수의.

versionName

string

앱의 버전 이름입니다. 선택 과목.

versionCode

string

앱의 내부 버전 코드입니다. 선택 과목.

Android계측 테스트

일반적인 수명주기와 관계없이 Android 구성요소를 제어할 수 있는 Android 애플리케이션 테스트입니다.

Android 테스트 유형에 대한 자세한 내용은 https://developer.android.com/training/testing/fundamentals를 참조하세요.

JSON 표현
{
  "testPackageId": string,
  "testRunnerClass": string,
  "testTargets": [
    string
  ],
  "useOrchestrator": boolean
}
필드
testPackageId

string

테스트를 실행할 Java 패키지입니다. 필수의

testRunnerClass

string

InstrumentationTestRunner 클래스입니다. 필수의

testTargets[]

string

각 대상은 다음 형식 중 하나로 패키지 이름 또는 클래스 이름으로 정규화되어야 합니다. - "package packageName" - "class packageName.class_name" - "class packageName.class_name#method_name"

비어 있으면 모듈의 모든 대상이 실행됩니다.

useOrchestrator

boolean

플래그는 Android Test Orchestrator를 사용하여 테스트를 실행할지 여부를 나타냅니다.

AndroidRobo테스트

가상 또는 실제 Android 기기에서 애플리케이션을 탐색하여 진행 중에 범인과 충돌을 찾는 Android 애플리케이션 테스트입니다.

JSON 표현
{
  "appInitialActivity": string,
  "bootstrapPackageId": string,
  "bootstrapRunnerClass": string,
  "maxDepth": integer,
  "maxSteps": integer
}
필드
appInitialActivity

string

앱을 시작하는 데 사용해야 하는 초기 활동입니다. 선택 과목

bootstrapPackageId

string

부트스트랩용 Java 패키지입니다. 선택 과목

bootstrapRunnerClass

string

부트스트랩의 실행자 클래스입니다. 선택 과목

maxDepth

integer

Robo가 탐색할 수 있는 순회 스택의 최대 깊이입니다. 선택 과목

maxSteps

integer

Robo가 실행할 수 있는 최대 단계/작업 수입니다. 기본값은 제한 없음(0)입니다. 선택 과목

Android테스트루프

이 유형에는 필드가 없습니다.

테스트 루프는 앱 자체에서 시작할 수 있는 테스트로, 인텐트를 수신하여 실행할 시기를 결정합니다.

IosTest

iOS 모바일 테스트 사양

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.
}
필드
iosAppInfo

object ( IosAppInfo )

테스트 중인 애플리케이션에 대한 정보입니다.

testTimeout

object ( Duration )

자동으로 취소되기 전에 테스트 실행이 허용되는 최대 시간입니다.

유니온 필드 test .

test 다음 중 하나만 가능합니다.

iosXcTest

object ( IosXcTest )

iOS XCTest.

iosTestLoop

object ( IosTestLoop )

iOS 테스트 루프.

iosRoboTest

object ( IosRoboTest )

iOS Robo 테스트.

IosApp정보

iOS 앱 정보

JSON 표현
{
  "name": string
}
필드
name

string

앱의 이름입니다. 필수의

IosXc테스트

XCTest 프레임워크를 사용하는 iOS 애플리케이션 테스트입니다.

JSON 표현
{
  "bundleId": string,
  "xcodeVersion": string
}
필드
bundleId

string

앱의 번들 ID입니다.

xcodeVersion

string

테스트가 실행된 Xcode 버전입니다.

IosTestLoop

iOS 애플리케이션의 게임 루프 테스트입니다.

JSON 표현
{
  "bundleId": string
}
필드
bundleId

string

앱의 번들 ID입니다.

IosRobo테스트

이 유형에는 필드가 없습니다.

iOS 애플리케이션용 Robo 테스트입니다.

행동 양식

create

실행을 생성합니다.

get

실행을 가져옵니다.

list

특정 기록에 대한 실행을 나열합니다.

patch

제공된 부분 엔터티로 기존 실행을 업데이트합니다.