DeviceFarm / Client / stop_job



Initiates a stop request for the current job. AWS Device Farm immediately stops the job on the device where tests have not started. You are not billed for this device. On the device where tests have started, setup suite and teardown suite tests run to completion on the device. You are billed for setup, teardown, and any tests that were in progress or already completed.

See also: AWS API Documentation

Request Syntax

response = client.stop_job(

arn (string) –


Represents the Amazon Resource Name (ARN) of the Device Farm job to stop.

Return type:



Response Syntax

    'job': {
        'arn': 'string',
        'name': 'string',
        'created': datetime(2015, 1, 1),
        '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': [
                    'status': 'IN_USE'|'PREPARING'|'AVAILABLE'|'NOT_AVAILABLE',
                    'udid': 'string',
                    'instanceProfile': {
                        'arn': 'string',
                        'packageCleanup': True|False,
                        'excludeAppPackagesFromCleanup': [
                        'rebootAfterUse': True|False,
                        'name': 'string',
                        'description': 'string'
        'instanceArn': 'string',
        'deviceMinutes': {
            'total': 123.0,
            'metered': 123.0,
            'unmetered': 123.0
        'videoEndpoint': 'string',
        'videoCapture': True|False

Response Structure

  • (dict) –

    • job (dict) –

      The job that was stopped.

      • 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

        • BUILTIN_EXPLORER. For Android, an app explorer that traverses an Android app, interacting with it and capturing screenshots at the same time.




        • APPIUM_NODE

        • APPIUM_RUBY






        • CALABASH




        • XCTEST

        • XCTEST_UI

      • created (datetime) –

        When the job was created.

      • status (string) –

        The job’s status.

        Allowed values include:

        • PENDING



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


  • DeviceFarm.Client.exceptions.ArgumentException

  • DeviceFarm.Client.exceptions.NotFoundException

  • DeviceFarm.Client.exceptions.LimitExceededException

  • DeviceFarm.Client.exceptions.ServiceAccountException