@rainforestqa/devicefarm-websocket-client

1.1.0 • Public • Published

Farmer

A web client built to interact with AWS Device Farm's remote access API.

The client was designed to be imported by turker and used by beak to interact directly with our devices on Device Farm.

Local development

  • Clone this repo locally
  • Run npm install
  • Run npm run dev to start a build that updates ./dist/example.js which is referenced by index.html
  • Start http server in this repository using python -m SimpleHTTPServer 8001
  • In Rainforest repo run bundle exec rails console to open rails console
  • In this console create a remote session on device farm. You will need our AWS Credentials and you can get the device farm arns at https://admin.rainforestqa.com/devices
device_farm = Aws::DeviceFarm::Client.new(region: 'us-west-2', credentials: Aws::Credentials.new(PUBLIC_KEY, SECRET_KEY))

remote = device_farm.create_remote_access_session({
  project_arn: OUR_DEVICEFARM_ARN,
  device_arn: SPECIFIC_DEVICE_ARN,
  name: "Remote Session Test",
  configuration: {
    billing_method: "METERED",
  },
})
  • to get our websocket session endpoint run the following. It will take ± 2min for the remote session to provision and this to return an endpoint.
access = device_farm.get_remote_access_session({arn: remote.remote_access_session.arn})
  • Get the endpoint value
access["remote_access_session"]["endpoint"]
  • Navigate to http://localhost:8001/
  • Paste the endpoint value into the input form at the top
  • Set the right device dimensions into the form fields
  • Click 'Launch Farmer' button
  • Profit!

Deployment

A new version of the package has to be published to NPM. Depending projects have to update their package.json to use the latest version.

TODO: Automate publishing to NPM when master build succeeds.

/@rainforestqa/devicefarm-websocket-client/

    Package Sidebar

    Install

    npm i @rainforestqa/devicefarm-websocket-client

    Weekly Downloads

    2

    Version

    1.1.0

    License

    ISC

    Unpacked Size

    99.9 kB

    Total Files

    16

    Last publish

    Collaborators

    • maciejgryka
    • jiri_rf
    • prayogoa
    • rainforestapp
    • ajfunk