1<html><body> 2<style> 3 4body, h1, h2, h3, div, span, p, pre, a { 5 margin: 0; 6 padding: 0; 7 border: 0; 8 font-weight: inherit; 9 font-style: inherit; 10 font-size: 100%; 11 font-family: inherit; 12 vertical-align: baseline; 13} 14 15body { 16 font-size: 13px; 17 padding: 1em; 18} 19 20h1 { 21 font-size: 26px; 22 margin-bottom: 1em; 23} 24 25h2 { 26 font-size: 24px; 27 margin-bottom: 1em; 28} 29 30h3 { 31 font-size: 20px; 32 margin-bottom: 1em; 33 margin-top: 1em; 34} 35 36pre, code { 37 line-height: 1.5; 38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; 39} 40 41pre { 42 margin-top: 0.5em; 43} 44 45h1, h2, h3, p { 46 font-family: Arial, sans serif; 47} 48 49h1, h2, h3 { 50 border-bottom: solid #CCC 1px; 51} 52 53.toc_element { 54 margin-top: 0.5em; 55} 56 57.firstline { 58 margin-left: 2 em; 59} 60 61.method { 62 margin-top: 1em; 63 border: solid 1px #CCC; 64 padding: 1em; 65 background: #EEE; 66} 67 68.details { 69 font-weight: bold; 70 font-size: 14px; 71} 72 73</style> 74 75<h1><a href="toolresults_v1beta3.html">Cloud Tool Results API</a> . <a href="toolresults_v1beta3.projects.html">projects</a> . <a href="toolresults_v1beta3.projects.histories.html">histories</a> . <a href="toolresults_v1beta3.projects.histories.executions.html">executions</a> . <a href="toolresults_v1beta3.projects.histories.executions.environments.html">environments</a></h1> 76<h2>Instance Methods</h2> 77<p class="toc_element"> 78 <code><a href="#close">close()</a></code></p> 79<p class="firstline">Close httplib2 connections.</p> 80<p class="toc_element"> 81 <code><a href="#get">get(projectId, historyId, executionId, environmentId, x__xgafv=None)</a></code></p> 82<p class="firstline">Gets an Environment. 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 Environment does not exist</p> 83<p class="toc_element"> 84 <code><a href="#list">list(projectId, historyId, executionId, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p> 85<p class="firstline">Lists Environments for a given Execution. The Environments are sorted by display name. 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 containing Execution does not exist</p> 86<p class="toc_element"> 87 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p> 88<p class="firstline">Retrieves the next page of results.</p> 89<h3>Method Details</h3> 90<div class="method"> 91 <code class="details" id="close">close()</code> 92 <pre>Close httplib2 connections.</pre> 93</div> 94 95<div class="method"> 96 <code class="details" id="get">get(projectId, historyId, executionId, environmentId, x__xgafv=None)</code> 97 <pre>Gets an Environment. 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 Environment does not exist 98 99Args: 100 projectId: string, Required. A Project id. (required) 101 historyId: string, Required. A History id. (required) 102 executionId: string, Required. An Execution id. (required) 103 environmentId: string, Required. An Environment id. (required) 104 x__xgafv: string, V1 error format. 105 Allowed values 106 1 - v1 error format 107 2 - v2 error format 108 109Returns: 110 An object of the form: 111 112 { # An Environment represents the set of test runs (Steps) from the parent Execution that are configured with the same set of dimensions (Model, Version, Locale, and Orientation). Multiple such runs occur particularly because of features like sharding (splitting up a test suite to run in parallel across devices) and reruns (running a test multiple times to check for different outcomes). 113 "completionTime": { # A Timestamp represents a point in time independent of any time zone or local calendar, encoded as a count of seconds and fractions of seconds at nanosecond resolution. The count is relative to an epoch at UTC midnight on January 1, 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar backwards to year one. All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap second table is needed for interpretation, using a [24-hour linear smear](https://developers.google.com/time/smear). The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings. # Output only. The time when the Environment status was set to complete. This value will be set automatically when state transitions to COMPLETE. 114 "nanos": 42, # Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. 115 "seconds": "A String", # Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive. 116 }, 117 "creationTime": { # A Timestamp represents a point in time independent of any time zone or local calendar, encoded as a count of seconds and fractions of seconds at nanosecond resolution. The count is relative to an epoch at UTC midnight on January 1, 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar backwards to year one. All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap second table is needed for interpretation, using a [24-hour linear smear](https://developers.google.com/time/smear). The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings. # Output only. The time when the Environment was created. 118 "nanos": 42, # Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. 119 "seconds": "A String", # Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive. 120 }, 121 "dimensionValue": [ # Dimension values describing the environment. Dimension values always consist of "Model", "Version", "Locale", and "Orientation". - In response: always set - In create request: always set - In update request: never set 122 { 123 "key": "A String", 124 "value": "A String", 125 }, 126 ], 127 "displayName": "A String", # A short human-readable name to display in the UI. Maximum of 100 characters. For example: Nexus 5, API 27. 128 "environmentId": "A String", # Output only. An Environment id. 129 "environmentResult": { # Merged test result for environment. If the environment has only one step (no reruns or shards), then the merged result is the same as the step result. If the environment has multiple shards and/or reruns, then the results of shards and reruns that belong to the same environment are merged into one environment result. # Merged result of the environment. 130 "outcome": { # Interprets a result so that humans and machines can act on it. # Outcome of the resource 131 "failureDetail": { # Details for an outcome with a FAILURE outcome summary. # More information about a FAILURE outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not FAILURE. Optional 132 "crashed": True or False, # If the failure was severe because the system (app) under test crashed. 133 "deviceOutOfMemory": True or False, # If the device ran out of memory during a test, causing the test to crash. 134 "failedRoboscript": True or False, # If the Roboscript failed to complete successfully, e.g., because a Roboscript action or assertion failed or a Roboscript action could not be matched during the entire crawl. 135 "notInstalled": True or False, # If an app is not installed and thus no test can be run with the app. This might be caused by trying to run a test on an unsupported platform. 136 "otherNativeCrash": True or False, # If a native process (including any other than the app) crashed. 137 "timedOut": True or False, # If the test overran some time limit, and that is why it failed. 138 "unableToCrawl": True or False, # If the robo was unable to crawl the app; perhaps because the app did not start. 139 }, 140 "inconclusiveDetail": { # Details for an outcome with an INCONCLUSIVE outcome summary. # More information about an INCONCLUSIVE outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not INCONCLUSIVE. Optional 141 "abortedByUser": True or False, # If the end user aborted the test execution before a pass or fail could be determined. For example, the user pressed ctrl-c which sent a kill signal to the test runner while the test was running. 142 "hasErrorLogs": True or False, # If results are being provided to the user in certain cases of infrastructure failures 143 "infrastructureFailure": True or False, # If the test runner could not determine success or failure because the test depends on a component other than the system under test which failed. For example, a mobile test requires provisioning a device where the test executes, and that provisioning can fail. 144 }, 145 "skippedDetail": { # Details for an outcome with a SKIPPED outcome summary. # More information about a SKIPPED outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not SKIPPED. Optional 146 "incompatibleAppVersion": True or False, # If the App doesn't support the specific API level. 147 "incompatibleArchitecture": True or False, # If the App doesn't run on the specific architecture, for example, x86. 148 "incompatibleDevice": True or False, # If the requested OS version doesn't run on the specific device model. 149 }, 150 "successDetail": { # Details for an outcome with a SUCCESS outcome summary. LINT.IfChange # More information about a SUCCESS outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not SUCCESS. Optional 151 "otherNativeCrash": True or False, # If a native process other than the app crashed. 152 }, 153 "summary": "A String", # The simplest way to interpret a result. Required 154 }, 155 "state": "A String", # State of the resource 156 "testSuiteOverviews": [ # The combined and rolled-up result of each test suite that was run as part of this environment. Combining: When the test cases from a suite are run in different steps (sharding), the results are added back together in one overview. (e.g., if shard1 has 2 failures and shard2 has 1 failure than the overview failure_count = 3). Rollup: When test cases from the same suite are run multiple times (flaky), the results are combined (e.g., if testcase1.run1 fails, testcase1.run2 passes, and both testcase2.run1 and testcase2.run2 fail then the overview flaky_count = 1 and failure_count = 1). 157 { # A summary of a test suite result either parsed from XML or uploaded directly by a user. Note: the API related comments are for StepService only. This message is also being used in ExecutionService in a read only mode for the corresponding step. 158 "elapsedTime": { # A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years. # Elapsed time of test suite. 159 "nanos": 42, # Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 `seconds` field and a positive or negative `nanos` field. For durations of one second or more, a non-zero value for the `nanos` field must be of the same sign as the `seconds` field. Must be from -999,999,999 to +999,999,999 inclusive. 160 "seconds": "A String", # Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years 161 }, 162 "errorCount": 42, # Number of test cases in error, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 163 "failureCount": 42, # Number of failed test cases, typically set by the service by parsing the xml_source. May also be set by the user. - In create/response: always set - In update request: never 164 "flakyCount": 42, # Number of flaky test cases, set by the service by rolling up flaky test attempts. Present only for rollup test suite overview at environment level. A step cannot have flaky test cases. 165 "name": "A String", # The name of the test suite. - In create/response: always set - In update request: never 166 "skippedCount": 42, # Number of test cases not run, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 167 "totalCount": 42, # Number of test cases, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 168 "xmlSource": { # A reference to a file. # If this test suite was parsed from XML, this is the URI where the original XML file is stored. Note: Multiple test suites can share the same xml_source Returns INVALID_ARGUMENT if the uri format is not supported. - In create/response: optional - In update request: never 169 "fileUri": "A String", # The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set 170 }, 171 }, 172 ], 173 }, 174 "executionId": "A String", # Output only. An Execution id. 175 "historyId": "A String", # Output only. A History id. 176 "projectId": "A String", # Output only. A Project id. 177 "resultsStorage": { # The storage for test results. # The location where output files are stored in the user bucket. 178 "resultsStoragePath": { # A reference to a file. # The root directory for test results. 179 "fileUri": "A String", # The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set 180 }, 181 "xunitXmlFile": { # A reference to a file. # The path to the Xunit XML file. 182 "fileUri": "A String", # The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set 183 }, 184 }, 185 "shardSummaries": [ # Output only. Summaries of shards. Only one shard will present unless sharding feature is enabled in TestExecutionService. 186 { # Result summary for a shard in an environment. 187 "runs": [ # Summaries of the steps belonging to the shard. With flaky_test_attempts enabled from TestExecutionService, more than one run (Step) can present. And the runs will be sorted by multistep_number. 188 { # Lightweight summary of a step within this execution. 189 }, 190 ], 191 "shardResult": { # Merged test result for environment. If the environment has only one step (no reruns or shards), then the merged result is the same as the step result. If the environment has multiple shards and/or reruns, then the results of shards and reruns that belong to the same environment are merged into one environment result. # Merged result of the shard. 192 "outcome": { # Interprets a result so that humans and machines can act on it. # Outcome of the resource 193 "failureDetail": { # Details for an outcome with a FAILURE outcome summary. # More information about a FAILURE outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not FAILURE. Optional 194 "crashed": True or False, # If the failure was severe because the system (app) under test crashed. 195 "deviceOutOfMemory": True or False, # If the device ran out of memory during a test, causing the test to crash. 196 "failedRoboscript": True or False, # If the Roboscript failed to complete successfully, e.g., because a Roboscript action or assertion failed or a Roboscript action could not be matched during the entire crawl. 197 "notInstalled": True or False, # If an app is not installed and thus no test can be run with the app. This might be caused by trying to run a test on an unsupported platform. 198 "otherNativeCrash": True or False, # If a native process (including any other than the app) crashed. 199 "timedOut": True or False, # If the test overran some time limit, and that is why it failed. 200 "unableToCrawl": True or False, # If the robo was unable to crawl the app; perhaps because the app did not start. 201 }, 202 "inconclusiveDetail": { # Details for an outcome with an INCONCLUSIVE outcome summary. # More information about an INCONCLUSIVE outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not INCONCLUSIVE. Optional 203 "abortedByUser": True or False, # If the end user aborted the test execution before a pass or fail could be determined. For example, the user pressed ctrl-c which sent a kill signal to the test runner while the test was running. 204 "hasErrorLogs": True or False, # If results are being provided to the user in certain cases of infrastructure failures 205 "infrastructureFailure": True or False, # If the test runner could not determine success or failure because the test depends on a component other than the system under test which failed. For example, a mobile test requires provisioning a device where the test executes, and that provisioning can fail. 206 }, 207 "skippedDetail": { # Details for an outcome with a SKIPPED outcome summary. # More information about a SKIPPED outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not SKIPPED. Optional 208 "incompatibleAppVersion": True or False, # If the App doesn't support the specific API level. 209 "incompatibleArchitecture": True or False, # If the App doesn't run on the specific architecture, for example, x86. 210 "incompatibleDevice": True or False, # If the requested OS version doesn't run on the specific device model. 211 }, 212 "successDetail": { # Details for an outcome with a SUCCESS outcome summary. LINT.IfChange # More information about a SUCCESS outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not SUCCESS. Optional 213 "otherNativeCrash": True or False, # If a native process other than the app crashed. 214 }, 215 "summary": "A String", # The simplest way to interpret a result. Required 216 }, 217 "state": "A String", # State of the resource 218 "testSuiteOverviews": [ # The combined and rolled-up result of each test suite that was run as part of this environment. Combining: When the test cases from a suite are run in different steps (sharding), the results are added back together in one overview. (e.g., if shard1 has 2 failures and shard2 has 1 failure than the overview failure_count = 3). Rollup: When test cases from the same suite are run multiple times (flaky), the results are combined (e.g., if testcase1.run1 fails, testcase1.run2 passes, and both testcase2.run1 and testcase2.run2 fail then the overview flaky_count = 1 and failure_count = 1). 219 { # A summary of a test suite result either parsed from XML or uploaded directly by a user. Note: the API related comments are for StepService only. This message is also being used in ExecutionService in a read only mode for the corresponding step. 220 "elapsedTime": { # A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years. # Elapsed time of test suite. 221 "nanos": 42, # Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 `seconds` field and a positive or negative `nanos` field. For durations of one second or more, a non-zero value for the `nanos` field must be of the same sign as the `seconds` field. Must be from -999,999,999 to +999,999,999 inclusive. 222 "seconds": "A String", # Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years 223 }, 224 "errorCount": 42, # Number of test cases in error, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 225 "failureCount": 42, # Number of failed test cases, typically set by the service by parsing the xml_source. May also be set by the user. - In create/response: always set - In update request: never 226 "flakyCount": 42, # Number of flaky test cases, set by the service by rolling up flaky test attempts. Present only for rollup test suite overview at environment level. A step cannot have flaky test cases. 227 "name": "A String", # The name of the test suite. - In create/response: always set - In update request: never 228 "skippedCount": 42, # Number of test cases not run, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 229 "totalCount": 42, # Number of test cases, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 230 "xmlSource": { # A reference to a file. # If this test suite was parsed from XML, this is the URI where the original XML file is stored. Note: Multiple test suites can share the same xml_source Returns INVALID_ARGUMENT if the uri format is not supported. - In create/response: optional - In update request: never 231 "fileUri": "A String", # The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set 232 }, 233 }, 234 ], 235 }, 236 }, 237 ], 238}</pre> 239</div> 240 241<div class="method"> 242 <code class="details" id="list">list(projectId, historyId, executionId, pageSize=None, pageToken=None, x__xgafv=None)</code> 243 <pre>Lists Environments for a given Execution. The Environments are sorted by display name. 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 containing Execution does not exist 244 245Args: 246 projectId: string, Required. A Project id. (required) 247 historyId: string, Required. A History id. (required) 248 executionId: string, Required. An Execution id. (required) 249 pageSize: integer, The maximum number of Environments to fetch. Default value: 25. The server will use this default if the field is not set or has a value of 0. 250 pageToken: string, A continuation token to resume the query at the next item. 251 x__xgafv: string, V1 error format. 252 Allowed values 253 1 - v1 error format 254 2 - v2 error format 255 256Returns: 257 An object of the form: 258 259 { # Response message for EnvironmentService.ListEnvironments. 260 "environments": [ # Environments. Always set. 261 { # An Environment represents the set of test runs (Steps) from the parent Execution that are configured with the same set of dimensions (Model, Version, Locale, and Orientation). Multiple such runs occur particularly because of features like sharding (splitting up a test suite to run in parallel across devices) and reruns (running a test multiple times to check for different outcomes). 262 "completionTime": { # A Timestamp represents a point in time independent of any time zone or local calendar, encoded as a count of seconds and fractions of seconds at nanosecond resolution. The count is relative to an epoch at UTC midnight on January 1, 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar backwards to year one. All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap second table is needed for interpretation, using a [24-hour linear smear](https://developers.google.com/time/smear). The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings. # Output only. The time when the Environment status was set to complete. This value will be set automatically when state transitions to COMPLETE. 263 "nanos": 42, # Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. 264 "seconds": "A String", # Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive. 265 }, 266 "creationTime": { # A Timestamp represents a point in time independent of any time zone or local calendar, encoded as a count of seconds and fractions of seconds at nanosecond resolution. The count is relative to an epoch at UTC midnight on January 1, 1970, in the proleptic Gregorian calendar which extends the Gregorian calendar backwards to year one. All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap second table is needed for interpretation, using a [24-hour linear smear](https://developers.google.com/time/smear). The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings. # Output only. The time when the Environment was created. 267 "nanos": 42, # Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. 268 "seconds": "A String", # Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive. 269 }, 270 "dimensionValue": [ # Dimension values describing the environment. Dimension values always consist of "Model", "Version", "Locale", and "Orientation". - In response: always set - In create request: always set - In update request: never set 271 { 272 "key": "A String", 273 "value": "A String", 274 }, 275 ], 276 "displayName": "A String", # A short human-readable name to display in the UI. Maximum of 100 characters. For example: Nexus 5, API 27. 277 "environmentId": "A String", # Output only. An Environment id. 278 "environmentResult": { # Merged test result for environment. If the environment has only one step (no reruns or shards), then the merged result is the same as the step result. If the environment has multiple shards and/or reruns, then the results of shards and reruns that belong to the same environment are merged into one environment result. # Merged result of the environment. 279 "outcome": { # Interprets a result so that humans and machines can act on it. # Outcome of the resource 280 "failureDetail": { # Details for an outcome with a FAILURE outcome summary. # More information about a FAILURE outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not FAILURE. Optional 281 "crashed": True or False, # If the failure was severe because the system (app) under test crashed. 282 "deviceOutOfMemory": True or False, # If the device ran out of memory during a test, causing the test to crash. 283 "failedRoboscript": True or False, # If the Roboscript failed to complete successfully, e.g., because a Roboscript action or assertion failed or a Roboscript action could not be matched during the entire crawl. 284 "notInstalled": True or False, # If an app is not installed and thus no test can be run with the app. This might be caused by trying to run a test on an unsupported platform. 285 "otherNativeCrash": True or False, # If a native process (including any other than the app) crashed. 286 "timedOut": True or False, # If the test overran some time limit, and that is why it failed. 287 "unableToCrawl": True or False, # If the robo was unable to crawl the app; perhaps because the app did not start. 288 }, 289 "inconclusiveDetail": { # Details for an outcome with an INCONCLUSIVE outcome summary. # More information about an INCONCLUSIVE outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not INCONCLUSIVE. Optional 290 "abortedByUser": True or False, # If the end user aborted the test execution before a pass or fail could be determined. For example, the user pressed ctrl-c which sent a kill signal to the test runner while the test was running. 291 "hasErrorLogs": True or False, # If results are being provided to the user in certain cases of infrastructure failures 292 "infrastructureFailure": True or False, # If the test runner could not determine success or failure because the test depends on a component other than the system under test which failed. For example, a mobile test requires provisioning a device where the test executes, and that provisioning can fail. 293 }, 294 "skippedDetail": { # Details for an outcome with a SKIPPED outcome summary. # More information about a SKIPPED outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not SKIPPED. Optional 295 "incompatibleAppVersion": True or False, # If the App doesn't support the specific API level. 296 "incompatibleArchitecture": True or False, # If the App doesn't run on the specific architecture, for example, x86. 297 "incompatibleDevice": True or False, # If the requested OS version doesn't run on the specific device model. 298 }, 299 "successDetail": { # Details for an outcome with a SUCCESS outcome summary. LINT.IfChange # More information about a SUCCESS outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not SUCCESS. Optional 300 "otherNativeCrash": True or False, # If a native process other than the app crashed. 301 }, 302 "summary": "A String", # The simplest way to interpret a result. Required 303 }, 304 "state": "A String", # State of the resource 305 "testSuiteOverviews": [ # The combined and rolled-up result of each test suite that was run as part of this environment. Combining: When the test cases from a suite are run in different steps (sharding), the results are added back together in one overview. (e.g., if shard1 has 2 failures and shard2 has 1 failure than the overview failure_count = 3). Rollup: When test cases from the same suite are run multiple times (flaky), the results are combined (e.g., if testcase1.run1 fails, testcase1.run2 passes, and both testcase2.run1 and testcase2.run2 fail then the overview flaky_count = 1 and failure_count = 1). 306 { # A summary of a test suite result either parsed from XML or uploaded directly by a user. Note: the API related comments are for StepService only. This message is also being used in ExecutionService in a read only mode for the corresponding step. 307 "elapsedTime": { # A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years. # Elapsed time of test suite. 308 "nanos": 42, # Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 `seconds` field and a positive or negative `nanos` field. For durations of one second or more, a non-zero value for the `nanos` field must be of the same sign as the `seconds` field. Must be from -999,999,999 to +999,999,999 inclusive. 309 "seconds": "A String", # Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years 310 }, 311 "errorCount": 42, # Number of test cases in error, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 312 "failureCount": 42, # Number of failed test cases, typically set by the service by parsing the xml_source. May also be set by the user. - In create/response: always set - In update request: never 313 "flakyCount": 42, # Number of flaky test cases, set by the service by rolling up flaky test attempts. Present only for rollup test suite overview at environment level. A step cannot have flaky test cases. 314 "name": "A String", # The name of the test suite. - In create/response: always set - In update request: never 315 "skippedCount": 42, # Number of test cases not run, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 316 "totalCount": 42, # Number of test cases, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 317 "xmlSource": { # A reference to a file. # If this test suite was parsed from XML, this is the URI where the original XML file is stored. Note: Multiple test suites can share the same xml_source Returns INVALID_ARGUMENT if the uri format is not supported. - In create/response: optional - In update request: never 318 "fileUri": "A String", # The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set 319 }, 320 }, 321 ], 322 }, 323 "executionId": "A String", # Output only. An Execution id. 324 "historyId": "A String", # Output only. A History id. 325 "projectId": "A String", # Output only. A Project id. 326 "resultsStorage": { # The storage for test results. # The location where output files are stored in the user bucket. 327 "resultsStoragePath": { # A reference to a file. # The root directory for test results. 328 "fileUri": "A String", # The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set 329 }, 330 "xunitXmlFile": { # A reference to a file. # The path to the Xunit XML file. 331 "fileUri": "A String", # The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set 332 }, 333 }, 334 "shardSummaries": [ # Output only. Summaries of shards. Only one shard will present unless sharding feature is enabled in TestExecutionService. 335 { # Result summary for a shard in an environment. 336 "runs": [ # Summaries of the steps belonging to the shard. With flaky_test_attempts enabled from TestExecutionService, more than one run (Step) can present. And the runs will be sorted by multistep_number. 337 { # Lightweight summary of a step within this execution. 338 }, 339 ], 340 "shardResult": { # Merged test result for environment. If the environment has only one step (no reruns or shards), then the merged result is the same as the step result. If the environment has multiple shards and/or reruns, then the results of shards and reruns that belong to the same environment are merged into one environment result. # Merged result of the shard. 341 "outcome": { # Interprets a result so that humans and machines can act on it. # Outcome of the resource 342 "failureDetail": { # Details for an outcome with a FAILURE outcome summary. # More information about a FAILURE outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not FAILURE. Optional 343 "crashed": True or False, # If the failure was severe because the system (app) under test crashed. 344 "deviceOutOfMemory": True or False, # If the device ran out of memory during a test, causing the test to crash. 345 "failedRoboscript": True or False, # If the Roboscript failed to complete successfully, e.g., because a Roboscript action or assertion failed or a Roboscript action could not be matched during the entire crawl. 346 "notInstalled": True or False, # If an app is not installed and thus no test can be run with the app. This might be caused by trying to run a test on an unsupported platform. 347 "otherNativeCrash": True or False, # If a native process (including any other than the app) crashed. 348 "timedOut": True or False, # If the test overran some time limit, and that is why it failed. 349 "unableToCrawl": True or False, # If the robo was unable to crawl the app; perhaps because the app did not start. 350 }, 351 "inconclusiveDetail": { # Details for an outcome with an INCONCLUSIVE outcome summary. # More information about an INCONCLUSIVE outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not INCONCLUSIVE. Optional 352 "abortedByUser": True or False, # If the end user aborted the test execution before a pass or fail could be determined. For example, the user pressed ctrl-c which sent a kill signal to the test runner while the test was running. 353 "hasErrorLogs": True or False, # If results are being provided to the user in certain cases of infrastructure failures 354 "infrastructureFailure": True or False, # If the test runner could not determine success or failure because the test depends on a component other than the system under test which failed. For example, a mobile test requires provisioning a device where the test executes, and that provisioning can fail. 355 }, 356 "skippedDetail": { # Details for an outcome with a SKIPPED outcome summary. # More information about a SKIPPED outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not SKIPPED. Optional 357 "incompatibleAppVersion": True or False, # If the App doesn't support the specific API level. 358 "incompatibleArchitecture": True or False, # If the App doesn't run on the specific architecture, for example, x86. 359 "incompatibleDevice": True or False, # If the requested OS version doesn't run on the specific device model. 360 }, 361 "successDetail": { # Details for an outcome with a SUCCESS outcome summary. LINT.IfChange # More information about a SUCCESS outcome. Returns INVALID_ARGUMENT if this field is set but the summary is not SUCCESS. Optional 362 "otherNativeCrash": True or False, # If a native process other than the app crashed. 363 }, 364 "summary": "A String", # The simplest way to interpret a result. Required 365 }, 366 "state": "A String", # State of the resource 367 "testSuiteOverviews": [ # The combined and rolled-up result of each test suite that was run as part of this environment. Combining: When the test cases from a suite are run in different steps (sharding), the results are added back together in one overview. (e.g., if shard1 has 2 failures and shard2 has 1 failure than the overview failure_count = 3). Rollup: When test cases from the same suite are run multiple times (flaky), the results are combined (e.g., if testcase1.run1 fails, testcase1.run2 passes, and both testcase2.run1 and testcase2.run2 fail then the overview flaky_count = 1 and failure_count = 1). 368 { # A summary of a test suite result either parsed from XML or uploaded directly by a user. Note: the API related comments are for StepService only. This message is also being used in ExecutionService in a read only mode for the corresponding step. 369 "elapsedTime": { # A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years. # Elapsed time of test suite. 370 "nanos": 42, # Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 `seconds` field and a positive or negative `nanos` field. For durations of one second or more, a non-zero value for the `nanos` field must be of the same sign as the `seconds` field. Must be from -999,999,999 to +999,999,999 inclusive. 371 "seconds": "A String", # Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years 372 }, 373 "errorCount": 42, # Number of test cases in error, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 374 "failureCount": 42, # Number of failed test cases, typically set by the service by parsing the xml_source. May also be set by the user. - In create/response: always set - In update request: never 375 "flakyCount": 42, # Number of flaky test cases, set by the service by rolling up flaky test attempts. Present only for rollup test suite overview at environment level. A step cannot have flaky test cases. 376 "name": "A String", # The name of the test suite. - In create/response: always set - In update request: never 377 "skippedCount": 42, # Number of test cases not run, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 378 "totalCount": 42, # Number of test cases, typically set by the service by parsing the xml_source. - In create/response: always set - In update request: never 379 "xmlSource": { # A reference to a file. # If this test suite was parsed from XML, this is the URI where the original XML file is stored. Note: Multiple test suites can share the same xml_source Returns INVALID_ARGUMENT if the uri format is not supported. - In create/response: optional - In update request: never 380 "fileUri": "A String", # The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set 381 }, 382 }, 383 ], 384 }, 385 }, 386 ], 387 }, 388 ], 389 "executionId": "A String", # A Execution id Always set. 390 "historyId": "A String", # A History id. Always set. 391 "nextPageToken": "A String", # A continuation token to resume the query at the next item. Will only be set if there are more Environments to fetch. 392 "projectId": "A String", # A Project id. Always set. 393}</pre> 394</div> 395 396<div class="method"> 397 <code class="details" id="list_next">list_next(previous_request, previous_response)</code> 398 <pre>Retrieves the next page of results. 399 400Args: 401 previous_request: The request for the previous page. (required) 402 previous_response: The response from the request for the previous page. (required) 403 404Returns: 405 A request object that you can call 'execute()' on to request the next 406 page. Returns None if there are no more items in the collection. 407 </pre> 408</div> 409 410</body></html>