Skip to main content

test_matrices

Creates, updates, deletes, gets or lists a test_matrices resource.

Overview

Nametest_matrices
TypeResource
Idgoogle.testing.test_matrices

Fields

NameDatatypeDescription
clientInfoobjectInformation about the client which invoked the test.
environmentMatrixobjectThe matrix of environments in which the test is to be executed.
extendedInvalidMatrixDetailsarrayOutput only. Details about why a matrix was deemed invalid. If multiple checks can be safely performed, they will be reported but no assumptions should be made about the length of this list.
failFastbooleanIf true, only a single attempt at most will be made to run each execution/shard in the matrix. Flaky test attempts are not affected. Normally, 2 or more attempts are made if a potential infrastructure issue is detected. This feature is for latency sensitive workloads. The incidence of execution failures may be significantly greater for fail-fast matrices and support is more limited because of that expectation.
flakyTestAttemptsintegerThe number of times a TestExecution should be re-attempted if one or more of its test cases fail for any reason. The maximum number of reruns allowed is 10. Default is 0, which implies no reruns.
invalidMatrixDetailsstringOutput only. Describes why the matrix is considered invalid. Only useful for matrices in the INVALID state.
outcomeSummarystringOutput Only. The overall outcome of the test. Only set when the test matrix state is FINISHED.
projectIdstringThe cloud project that owns the test matrix.
resultStorageobjectLocations where the results of running the test are stored.
statestringOutput only. Indicates the current progress of the test matrix.
testExecutionsarrayOutput only. The list of test executions that the service creates for this matrix.
testMatrixIdstringOutput only. Unique id set by the service.
testSpecificationobjectA description of how to run the test.
timestampstringOutput only. The time this test matrix was initially created.

Methods

NameAccessible byRequired ParamsDescription
getSELECTprojectId, testMatrixIdChecks the status of a test matrix and the executions once they are created. The test matrix will contain the list of test executions to run if and only if the resultStorage.toolResultsExecution fields have been populated. Note: Flaky test executions may be added to the matrix at a later stage. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Test Matrix does not exist
createINSERTprojectIdCreates and runs a matrix of tests according to the given specifications. Unsupported environments will be returned in the state UNSUPPORTED. A test matrix is limited to use at most 2000 devices in parallel. The returned matrix will not yet contain the executions that will be created for this matrix. Execution creation happens later on and will require a call to GetTestMatrix. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to write to project - INVALID_ARGUMENT - if the request is malformed or if the matrix tries to use too many simultaneous devices.
cancelEXECprojectId, testMatrixIdCancels unfinished test executions in a test matrix. This call returns immediately and cancellation proceeds asynchronously. If the matrix is already final, this operation will have no effect. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Test Matrix does not exist

SELECT examples

Checks the status of a test matrix and the executions once they are created. The test matrix will contain the list of test executions to run if and only if the resultStorage.toolResultsExecution fields have been populated. Note: Flaky test executions may be added to the matrix at a later stage. May return any of the following canonical error codes: - PERMISSION_DENIED - if the user is not authorized to read project - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Test Matrix does not exist

SELECT
clientInfo,
environmentMatrix,
extendedInvalidMatrixDetails,
failFast,
flakyTestAttempts,
invalidMatrixDetails,
outcomeSummary,
projectId,
resultStorage,
state,
testExecutions,
testMatrixId,
testSpecification,
timestamp
FROM google.testing.test_matrices
WHERE projectId = '{{ projectId }}'
AND testMatrixId = '{{ testMatrixId }}';

INSERT example

Use the following StackQL query and manifest file to create a new test_matrices resource.

/*+ create */
INSERT INTO google.testing.test_matrices (
projectId,
testMatrixId,
projectId,
clientInfo,
testSpecification,
environmentMatrix,
testExecutions,
resultStorage,
state,
timestamp,
invalidMatrixDetails,
flakyTestAttempts,
outcomeSummary,
failFast
)
SELECT
'{{ projectId }}',
'{{ testMatrixId }}',
'{{ projectId }}',
'{{ clientInfo }}',
'{{ testSpecification }}',
'{{ environmentMatrix }}',
'{{ testExecutions }}',
'{{ resultStorage }}',
'{{ state }}',
'{{ timestamp }}',
'{{ invalidMatrixDetails }}',
'{{ flakyTestAttempts }}',
'{{ outcomeSummary }}',
{{ failFast }}
;