DeviceFarm / Client / list_jobs

list_jobs#

DeviceFarm.Client.list_jobs(**kwargs)#

Gets information about jobs for a given test run.

See also: AWS API Documentation

Request Syntax

response = client.list_jobs(
    arn='string',
    nextToken='string'
)
Parameters:
  • arn (string) –

    [REQUIRED]

    The run’s Amazon Resource Name (ARN).

  • 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

{
    'jobs': [
        {
            'arn': 'string',
            'name': 'string',
            'type': 'BUILTIN_FUZZ'|'APPIUM_JAVA_JUNIT'|'APPIUM_JAVA_TESTNG'|'APPIUM_PYTHON'|'APPIUM_NODE'|'APPIUM_RUBY'|'APPIUM_WEB_JAVA_JUNIT'|'APPIUM_WEB_JAVA_TESTNG'|'APPIUM_WEB_PYTHON'|'APPIUM_WEB_NODE'|'APPIUM_WEB_RUBY'|'INSTRUMENTATION'|'XCTEST'|'XCTEST_UI',
            'created': datetime(2015, 1, 1),
            'status': 'PENDING'|'PENDING_CONCURRENCY'|'PENDING_DEVICE'|'PROCESSING'|'SCHEDULING'|'PREPARING'|'RUNNING'|'COMPLETED'|'STOPPING',
            'result': 'PENDING'|'PASSED'|'WARNED'|'FAILED'|'SKIPPED'|'ERRORED'|'STOPPED',
            'started': datetime(2015, 1, 1),
            'stopped': datetime(2015, 1, 1),
            'counters': {
                'total': 123,
                'passed': 123,
                'failed': 123,
                'warned': 123,
                'errored': 123,
                'stopped': 123,
                'skipped': 123
            },
            'message': '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'
            },
            'instanceArn': 'string',
            'deviceMinutes': {
                'total': 123.0,
                'metered': 123.0,
                'unmetered': 123.0
            },
            'videoEndpoint': 'string',
            'videoCapture': True|False
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) –

    Represents the result of a list jobs request.

    • jobs (list) –

      Information about the jobs.

      • (dict) –

        Represents a device.

        • arn (string) –

          The job’s ARN.

        • name (string) –

          The job’s name.

        • type (string) –

          The job’s type.

          Allowed values include the following:

          • BUILTIN_FUZZ

          • APPIUM_JAVA_JUNIT

          • APPIUM_JAVA_TESTNG

          • APPIUM_PYTHON

          • APPIUM_NODE

          • APPIUM_RUBY

          • APPIUM_WEB_JAVA_JUNIT

          • APPIUM_WEB_JAVA_TESTNG

          • APPIUM_WEB_PYTHON

          • APPIUM_WEB_NODE

          • APPIUM_WEB_RUBY

          • INSTRUMENTATION

          • XCTEST

          • XCTEST_UI

        • created (datetime) –

          When the job was created.

        • status (string) –

          The job’s status.

          Allowed values include:

          • PENDING

          • PENDING_CONCURRENCY

          • PENDING_DEVICE

          • PROCESSING

          • SCHEDULING

          • PREPARING

          • RUNNING

          • COMPLETED

          • STOPPING

        • result (string) –

          The job’s result.

          Allowed values include:

          • PENDING

          • PASSED

          • WARNED

          • FAILED

          • SKIPPED

          • ERRORED

          • STOPPED

        • started (datetime) –

          The job’s start time.

        • stopped (datetime) –

          The job’s stop time.

        • counters (dict) –

          The job’s result counters.

          • total (integer) –

            The total number of entities.

          • passed (integer) –

            The number of passed entities.

          • failed (integer) –

            The number of failed entities.

          • warned (integer) –

            The number of warned entities.

          • errored (integer) –

            The number of errored entities.

          • stopped (integer) –

            The number of stopped entities.

          • skipped (integer) –

            The number of skipped entities.

        • message (string) –

          A message about the job’s result.

        • device (dict) –

          The device (phone or tablet).

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

        • instanceArn (string) –

          The ARN of the instance.

        • deviceMinutes (dict) –

          Represents the total (metered or unmetered) minutes used by the job.

          • total (float) –

            When specified, represents the total minutes used by the resource to run tests.

          • metered (float) –

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered (float) –

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • videoEndpoint (string) –

          The endpoint for streaming device video.

        • videoCapture (boolean) –

          This value is set to true if video capture is enabled. Otherwise, it is set to false.

    • 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

Examples

The following example returns information about jobs in a specific project.

response = client.list_jobs(
    # You can get the project ARN by using the list-jobs CLI command.
    arn='arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456',
)

print(response)

Expected Output:

{
    'ResponseMetadata': {
        '...': '...',
    },
}