DeviceFarm class

Welcome to the AWS Device Farm API documentation, which contains APIs for:

  • Testing on desktop browsers

    Device Farm makes it possible for you to test your web applications on desktop browsers using Selenium. The APIs for desktop browser testing contain TestGrid in their names. For more information, see Testing Web Applications on Selenium with Device Farm.

  • Testing on real mobile devices

    Device Farm makes it possible for you to test apps on physical phones, tablets, and other devices in the cloud. For more information, see the Device Farm Developer Guide.

Constructors

DeviceFarm({required String region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

close() → void
Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
createDevicePool({required String name, required String projectArn, required List<Rule> rules, String? description, int? maxDevices}) Future<CreateDevicePoolResult>
Creates a device pool.
createInstanceProfile({required String name, String? description, List<String>? excludeAppPackagesFromCleanup, bool? packageCleanup, bool? rebootAfterUse}) Future<CreateInstanceProfileResult>
Creates a profile that can be applied to one or more private fleet device instances.
createNetworkProfile({required String name, required String projectArn, String? description, int? downlinkBandwidthBits, int? downlinkDelayMs, int? downlinkJitterMs, int? downlinkLossPercent, NetworkProfileType? type, int? uplinkBandwidthBits, int? uplinkDelayMs, int? uplinkJitterMs, int? uplinkLossPercent}) Future<CreateNetworkProfileResult>
Creates a network profile.
createProject({required String name, int? defaultJobTimeoutMinutes}) Future<CreateProjectResult>
Creates a project.
createRemoteAccessSession({required String deviceArn, required String projectArn, String? clientId, CreateRemoteAccessSessionConfiguration? configuration, String? instanceArn, InteractionMode? interactionMode, String? name, bool? remoteDebugEnabled, String? remoteRecordAppArn, bool? remoteRecordEnabled, bool? skipAppResign, String? sshPublicKey}) Future<CreateRemoteAccessSessionResult>
Specifies and starts a remote access session.
createTestGridProject({required String name, String? description}) Future<CreateTestGridProjectResult>
Creates a Selenium testing project. Projects are used to track TestGridSession instances.
createTestGridUrl({required int expiresInSeconds, required String projectArn}) Future<CreateTestGridUrlResult>
Creates a signed, short-term URL that can be passed to a Selenium RemoteWebDriver constructor.
createUpload({required String name, required String projectArn, required UploadType type, String? contentType}) Future<CreateUploadResult>
Uploads an app or test scripts.
createVPCEConfiguration({required String serviceDnsName, required String vpceConfigurationName, required String vpceServiceName, String? vpceConfigurationDescription}) Future<CreateVPCEConfigurationResult>
Creates a configuration record in Device Farm for your Amazon Virtual Private Cloud (VPC) endpoint.
deleteDevicePool({required String arn}) Future<void>
Deletes a device pool given the pool ARN. Does not allow deletion of curated pools owned by the system.
deleteInstanceProfile({required String arn}) Future<void>
Deletes a profile that can be applied to one or more private device instances.
deleteNetworkProfile({required String arn}) Future<void>
Deletes a network profile.
deleteProject({required String arn}) Future<void>
Deletes an AWS Device Farm project, given the project ARN.
deleteRemoteAccessSession({required String arn}) Future<void>
Deletes a completed remote access session and its results.
deleteRun({required String arn}) Future<void>
Deletes the run, given the run ARN.
deleteTestGridProject({required String projectArn}) Future<void>
Deletes a Selenium testing project and all content generated under it.
deleteUpload({required String arn}) Future<void>
Deletes an upload given the upload ARN.
deleteVPCEConfiguration({required String arn}) Future<void>
Deletes a configuration for your Amazon Virtual Private Cloud (VPC) endpoint.
getAccountSettings() Future<GetAccountSettingsResult>
Returns the number of unmetered iOS or unmetered Android devices that have been purchased by the account.
getDevice({required String arn}) Future<GetDeviceResult>
Gets information about a unique device type.
getDeviceInstance({required String arn}) Future<GetDeviceInstanceResult>
Returns information about a device instance that belongs to a private device fleet.
getDevicePool({required String arn}) Future<GetDevicePoolResult>
Gets information about a device pool.
getDevicePoolCompatibility({required String devicePoolArn, String? appArn, ScheduleRunConfiguration? configuration, ScheduleRunTest? test, TestType? testType}) Future<GetDevicePoolCompatibilityResult>
Gets information about compatibility with a device pool.
getInstanceProfile({required String arn}) Future<GetInstanceProfileResult>
Returns information about the specified instance profile.
getJob({required String arn}) Future<GetJobResult>
Gets information about a job.
getNetworkProfile({required String arn}) Future<GetNetworkProfileResult>
Returns information about a network profile.
getOfferingStatus({String? nextToken}) Future<GetOfferingStatusResult>
Gets the current status and future status of all offerings purchased by an AWS account. The response indicates how many offerings are currently available and the offerings that will be available in the next period. The API returns a NotEligible error if the user is not permitted to invoke the operation. If you must be able to invoke this operation, contact aws-devicefarm-support@amazon.com.
getProject({required String arn}) Future<GetProjectResult>
Gets information about a project.
getRemoteAccessSession({required String arn}) Future<GetRemoteAccessSessionResult>
Returns a link to a currently running remote access session.
getRun({required String arn}) Future<GetRunResult>
Gets information about a run.
getSuite({required String arn}) Future<GetSuiteResult>
Gets information about a suite.
getTest({required String arn}) Future<GetTestResult>
Gets information about a test.
getTestGridProject({required String projectArn}) Future<GetTestGridProjectResult>
Retrieves information about a Selenium testing project.
getTestGridSession({String? projectArn, String? sessionArn, String? sessionId}) Future<GetTestGridSessionResult>
A session is an instance of a browser created through a RemoteWebDriver with the URL from CreateTestGridUrlResult$url. You can use the following to look up sessions:
getUpload({required String arn}) Future<GetUploadResult>
Gets information about an upload.
getVPCEConfiguration({required String arn}) Future<GetVPCEConfigurationResult>
Returns information about the configuration settings for your Amazon Virtual Private Cloud (VPC) endpoint.
installToRemoteAccessSession({required String appArn, required String remoteAccessSessionArn}) Future<InstallToRemoteAccessSessionResult>
Installs an application to the device in a remote access session. For Android applications, the file must be in .apk format. For iOS applications, the file must be in .ipa format.
listArtifacts({required String arn, required ArtifactCategory type, String? nextToken}) Future<ListArtifactsResult>
Gets information about artifacts.
listDeviceInstances({int? maxResults, String? nextToken}) Future<ListDeviceInstancesResult>
Returns information about the private device instances associated with one or more AWS accounts.
listDevicePools({required String arn, String? nextToken, DevicePoolType? type}) Future<ListDevicePoolsResult>
Gets information about device pools.
listDevices({String? arn, List<DeviceFilter>? filters, String? nextToken}) Future<ListDevicesResult>
Gets information about unique device types.
listInstanceProfiles({int? maxResults, String? nextToken}) Future<ListInstanceProfilesResult>
Returns information about all the instance profiles in an AWS account.
listJobs({required String arn, String? nextToken}) Future<ListJobsResult>
Gets information about jobs for a given test run.
listNetworkProfiles({required String arn, String? nextToken, NetworkProfileType? type}) Future<ListNetworkProfilesResult>
Returns the list of available network profiles.
listOfferingPromotions({String? nextToken}) Future<ListOfferingPromotionsResult>
Returns a list of offering promotions. Each offering promotion record contains the ID and description of the promotion. The API returns a NotEligible error if the caller is not permitted to invoke the operation. Contact aws-devicefarm-support@amazon.com if you must be able to invoke this operation.
listOfferings({String? nextToken}) Future<ListOfferingsResult>
Returns a list of products or offerings that the user can manage through the API. Each offering record indicates the recurring price per unit and the frequency for that offering. The API returns a NotEligible error if the user is not permitted to invoke the operation. If you must be able to invoke this operation, contact aws-devicefarm-support@amazon.com.
listOfferingTransactions({String? nextToken}) Future<ListOfferingTransactionsResult>
Returns a list of all historical purchases, renewals, and system renewal transactions for an AWS account. The list is paginated and ordered by a descending timestamp (most recent transactions are first). The API returns a NotEligible error if the user is not permitted to invoke the operation. If you must be able to invoke this operation, contact aws-devicefarm-support@amazon.com.
listProjects({String? arn, String? nextToken}) Future<ListProjectsResult>
Gets information about projects.
listRemoteAccessSessions({required String arn, String? nextToken}) Future<ListRemoteAccessSessionsResult>
Returns a list of all currently running remote access sessions.
listRuns({required String arn, String? nextToken}) Future<ListRunsResult>
Gets information about runs, given an AWS Device Farm project ARN.
listSamples({required String arn, String? nextToken}) Future<ListSamplesResult>
Gets information about samples, given an AWS Device Farm job ARN.
listSuites({required String arn, String? nextToken}) Future<ListSuitesResult>
Gets information about test suites for a given job.
listTagsForResource({required String resourceARN}) Future<ListTagsForResourceResponse>
List the tags for an AWS Device Farm resource.
listTestGridProjects({int? maxResult, String? nextToken}) Future<ListTestGridProjectsResult>
Gets a list of all Selenium testing projects in your account.
listTestGridSessionActions({required String sessionArn, int? maxResult, String? nextToken}) Future<ListTestGridSessionActionsResult>
Returns a list of the actions taken in a TestGridSession.
listTestGridSessionArtifacts({required String sessionArn, int? maxResult, String? nextToken, TestGridSessionArtifactCategory? type}) Future<ListTestGridSessionArtifactsResult>
Retrieves a list of artifacts created during the session.
listTestGridSessions({required String projectArn, DateTime? creationTimeAfter, DateTime? creationTimeBefore, DateTime? endTimeAfter, DateTime? endTimeBefore, int? maxResult, String? nextToken, TestGridSessionStatus? status}) Future<ListTestGridSessionsResult>
Retrieves a list of sessions for a TestGridProject.
listTests({required String arn, String? nextToken}) Future<ListTestsResult>
Gets information about tests in a given test suite.
listUniqueProblems({required String arn, String? nextToken}) Future<ListUniqueProblemsResult>
Gets information about unique problems, such as exceptions or crashes.
listUploads({required String arn, String? nextToken, UploadType? type}) Future<ListUploadsResult>
Gets information about uploads, given an AWS Device Farm project ARN.
listVPCEConfigurations({int? maxResults, String? nextToken}) Future<ListVPCEConfigurationsResult>
Returns information about all Amazon Virtual Private Cloud (VPC) endpoint configurations in the AWS account.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
purchaseOffering({String? offeringId, String? offeringPromotionId, int? quantity}) Future<PurchaseOfferingResult>
Immediately purchases offerings for an AWS account. Offerings renew with the latest total purchased quantity for an offering, unless the renewal was overridden. The API returns a NotEligible error if the user is not permitted to invoke the operation. If you must be able to invoke this operation, contact aws-devicefarm-support@amazon.com.
renewOffering({String? offeringId, int? quantity}) Future<RenewOfferingResult>
Explicitly sets the quantity of devices to renew for an offering, starting from the effectiveDate of the next period. The API returns a NotEligible error if the user is not permitted to invoke the operation. If you must be able to invoke this operation, contact aws-devicefarm-support@amazon.com.
scheduleRun({required String projectArn, required ScheduleRunTest test, String? appArn, ScheduleRunConfiguration? configuration, String? devicePoolArn, DeviceSelectionConfiguration? deviceSelectionConfiguration, ExecutionConfiguration? executionConfiguration, String? name}) Future<ScheduleRunResult>
Schedules a run.
stopJob({required String arn}) Future<StopJobResult>
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.
stopRemoteAccessSession({required String arn}) Future<StopRemoteAccessSessionResult>
Ends a specified remote access session.
stopRun({required String arn}) Future<StopRunResult>
Initiates a stop request for the current test run. AWS Device Farm immediately stops the run on devices where tests have not started. You are not billed for these devices. On devices where tests have started executing, setup suite and teardown suite tests run to completion on those devices. You are billed for setup, teardown, and any tests that were in progress or already completed.
tagResource({required String resourceARN, required List<Tag> tags}) Future<void>
Associates the specified tags to a resource with the specified resourceArn. If existing tags on a resource are not specified in the request parameters, they are not changed. When a resource is deleted, the tags associated with that resource are also deleted.
toString() String
A string representation of this object.
inherited
untagResource({required String resourceARN, required List<String> tagKeys}) Future<void>
Deletes the specified tags from a resource.
updateDeviceInstance({required String arn, List<String>? labels, String? profileArn}) Future<UpdateDeviceInstanceResult>
Updates information about a private device instance.
updateDevicePool({required String arn, bool? clearMaxDevices, String? description, int? maxDevices, String? name, List<Rule>? rules}) Future<UpdateDevicePoolResult>
Modifies the name, description, and rules in a device pool given the attributes and the pool ARN. Rule updates are all-or-nothing, meaning they can only be updated as a whole (or not at all).
updateInstanceProfile({required String arn, String? description, List<String>? excludeAppPackagesFromCleanup, String? name, bool? packageCleanup, bool? rebootAfterUse}) Future<UpdateInstanceProfileResult>
Updates information about an existing private device instance profile.
updateNetworkProfile({required String arn, String? description, int? downlinkBandwidthBits, int? downlinkDelayMs, int? downlinkJitterMs, int? downlinkLossPercent, String? name, NetworkProfileType? type, int? uplinkBandwidthBits, int? uplinkDelayMs, int? uplinkJitterMs, int? uplinkLossPercent}) Future<UpdateNetworkProfileResult>
Updates the network profile.
updateProject({required String arn, int? defaultJobTimeoutMinutes, String? name}) Future<UpdateProjectResult>
Modifies the specified project name, given the project ARN and a new name.
updateTestGridProject({required String projectArn, String? description, String? name}) Future<UpdateTestGridProjectResult>
Change details of a project.
updateUpload({required String arn, String? contentType, bool? editContent, String? name}) Future<UpdateUploadResult>
Updates an uploaded test spec.
updateVPCEConfiguration({required String arn, String? serviceDnsName, String? vpceConfigurationDescription, String? vpceConfigurationName, String? vpceServiceName}) Future<UpdateVPCEConfigurationResult>
Updates information about an Amazon Virtual Private Cloud (VPC) endpoint configuration.

Operators

operator ==(Object other) bool
The equality operator.
inherited