DeviceFarm / Client / list_unique_problems

list_unique_problems#

DeviceFarm.Client.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': {
        '...': '...',
    },
}