list_unique_problems

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'
)
Parameters
  • arn (string) --

    [REQUIRED]

    The unique problems' ARNs.

  • nextToken (string) -- An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.
Return type

dict

Returns

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:

      • PENDING
      • PASSED
      • WARNED
      • FAILED
      • SKIPPED
      • ERRORED
      • STOPPED
      • (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:

                    • PHONE
                    • TABLET
                  • platform (string) --

                    The device's platform.

                    Allowed values include:

                    • ANDROID
                    • IOS
                  • 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.

                        • (string) --
                      • 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 .

                          • (string) --
                        • 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:

                  • PENDING
                  • PASSED
                  • WARNED
                  • FAILED
                  • SKIPPED
                  • ERRORED
                  • STOPPED
                • 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': {
        '...': '...',
    },
}