list_unique_problems
(**kwargs)¶Gets information about unique problems, such as exceptions or crashes.
Unique problems are defined as a single instance of an error across a run, job, or suite. For example, if a call in your application consistently raises an exception ( OutOfBoundsException in MyActivity.java:386
), ListUniqueProblems
returns a single entry instead of many individual entries for that exception.
See also: AWS API Documentation
Request Syntax
response = client.list_unique_problems(
arn='string',
nextToken='string'
)
[REQUIRED]
The unique problems' ARNs.
dict
Response Syntax
{
'uniqueProblems': {
'string': [
{
'message': 'string',
'problems': [
{
'run': {
'arn': 'string',
'name': 'string'
},
'job': {
'arn': 'string',
'name': 'string'
},
'suite': {
'arn': 'string',
'name': 'string'
},
'test': {
'arn': 'string',
'name': 'string'
},
'device': {
'arn': 'string',
'name': 'string',
'manufacturer': 'string',
'model': 'string',
'modelId': 'string',
'formFactor': 'PHONE'|'TABLET',
'platform': 'ANDROID'|'IOS',
'os': 'string',
'cpu': {
'frequency': 'string',
'architecture': 'string',
'clock': 123.0
},
'resolution': {
'width': 123,
'height': 123
},
'heapSize': 123,
'memory': 123,
'image': 'string',
'carrier': 'string',
'radio': 'string',
'remoteAccessEnabled': True|False,
'remoteDebugEnabled': True|False,
'fleetType': 'string',
'fleetName': 'string',
'instances': [
{
'arn': 'string',
'deviceArn': 'string',
'labels': [
'string',
],
'status': 'IN_USE'|'PREPARING'|'AVAILABLE'|'NOT_AVAILABLE',
'udid': 'string',
'instanceProfile': {
'arn': 'string',
'packageCleanup': True|False,
'excludeAppPackagesFromCleanup': [
'string',
],
'rebootAfterUse': True|False,
'name': 'string',
'description': 'string'
}
},
],
'availability': 'TEMPORARY_NOT_AVAILABLE'|'BUSY'|'AVAILABLE'|'HIGHLY_AVAILABLE'
},
'result': 'PENDING'|'PASSED'|'WARNED'|'FAILED'|'SKIPPED'|'ERRORED'|'STOPPED',
'message': 'string'
},
]
},
]
},
'nextToken': 'string'
}
Response Structure
(dict) --
Represents the result of a list unique problems request.
uniqueProblems (dict) --
Information about the unique problems.
Allowed values include:
(string) --
(list) --
(dict) --
A collection of one or more problems, grouped by their result.
message (string) --
A message about the unique problems' result.
problems (list) --
Information about the problems.
(dict) --
Represents a specific warning or failure.
run (dict) --
Information about the associated run.
arn (string) --
The problem detail's ARN.
name (string) --
The problem detail's name.
job (dict) --
Information about the associated job.
arn (string) --
The problem detail's ARN.
name (string) --
The problem detail's name.
suite (dict) --
Information about the associated suite.
arn (string) --
The problem detail's ARN.
name (string) --
The problem detail's name.
test (dict) --
Information about the associated test.
arn (string) --
The problem detail's ARN.
name (string) --
The problem detail's name.
device (dict) --
Information about the associated device.
arn (string) --
The device's ARN.
name (string) --
The device's display name.
manufacturer (string) --
The device's manufacturer name.
model (string) --
The device's model name.
modelId (string) --
The device's model ID.
formFactor (string) --
The device's form factor.
Allowed values include:
platform (string) --
The device's platform.
Allowed values include:
os (string) --
The device's operating system type.
cpu (dict) --
Information about the device's CPU.
frequency (string) --
The CPU's frequency.
architecture (string) --
The CPU's architecture (for example, x86 or ARM).
clock (float) --
The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.
resolution (dict) --
The resolution of the device.
width (integer) --
The screen resolution's width, expressed in pixels.
height (integer) --
The screen resolution's height, expressed in pixels.
heapSize (integer) --
The device's heap size, expressed in bytes.
memory (integer) --
The device's total memory size, expressed in bytes.
image (string) --
The device's image name.
carrier (string) --
The device's carrier.
radio (string) --
The device's radio.
remoteAccessEnabled (boolean) --
Specifies whether remote access has been enabled for the specified device.
remoteDebugEnabled (boolean) --
This flag is set to true
if remote debugging is enabled for the device.
Remote debugging is no longer supported.
fleetType (string) --
The type of fleet to which this device belongs. Possible values are PRIVATE and PUBLIC.
fleetName (string) --
The name of the fleet to which this device belongs.
instances (list) --
The instances that belong to this device.
(dict) --
Represents the device instance.
arn (string) --
The Amazon Resource Name (ARN) of the device instance.
deviceArn (string) --
The ARN of the device.
labels (list) --
An array of strings that describe the device instance.
status (string) --
The status of the device instance. Valid values are listed here.
udid (string) --
Unique device identifier for the device instance.
instanceProfile (dict) --
A object that contains information about the instance profile.
arn (string) --
The Amazon Resource Name (ARN) of the instance profile.
packageCleanup (boolean) --
When set to true
, Device Farm removes app packages after a test run. The default value is false
for private devices.
excludeAppPackagesFromCleanup (list) --
An array of strings containing the list of app packages that should not be cleaned up from the device after a test run completes.
The list of packages is considered only if you set packageCleanup
to true
.
rebootAfterUse (boolean) --
When set to true
, Device Farm reboots the instance after a test run. The default value is true
.
name (string) --
The name of the instance profile.
description (string) --
The description of the instance profile.
availability (string) --
Indicates how likely a device is available for a test run. Currently available in the ListDevices and GetDevice API methods.
result (string) --
The problem's result.
Allowed values include:
message (string) --
A message about the problem's result.
nextToken (string) --
If the number of items that are returned is significantly large, this is an identifier that is also returned. It can be used in a subsequent call to this operation to return the next set of items in the list.
Exceptions
DeviceFarm.Client.exceptions.ArgumentException
DeviceFarm.Client.exceptions.NotFoundException
DeviceFarm.Client.exceptions.LimitExceededException
DeviceFarm.Client.exceptions.ServiceAccountException
Examples
The following example returns information about unique problems, given a specific Device Farm project.
response = client.list_unique_problems(
# You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.
arn='arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456',
# A dynamically generated value, used for paginating results.
nextToken='RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE',
)
print(response)
Expected Output:
{
'uniqueProblems': {
},
'ResponseMetadata': {
'...': '...',
},
}