Roku Service
wdio-roku-service is a 3rd party package, for more information please see GitHub | npm This service overrides many parts of WebdriverIO to allow them to be used with Roku apps and provides access to the Roku ECP to control the Roku during testing.
Requirements
Roku
A test channel/channel.zip and a Roku device (with Developer Mode enabled) on the same network as your mac.
WebdriverIO
This is not a standalone product -- it is used as a WebdriverIO test framework plugin (or Service, in their vernacular). Before using this, you should go through the setup for WDIO by running npm init wdio@latest.
When going through the setup steps, so you don't have to navigate all the questions/options, you can just choose the following selections during the init phase:
- Roku Testing (NOTE: Use this if your repo will only be used for Roku testing as it will become the default and only service installed. Otherwise, use E2E Testing so you can install multiple services.)
- On my local machine (E2E only)
- Web (E2E only)
- Chrome (E2E only)
- Mocha
- Typescript [modules works for TS and JS, so choose whichever]
- autogenerate some test files (Y) -- default location
- page objects (Y) -- default location
- spec reporter
- additional plugins (N)
- Visual Testing (N)
- services (roku)
- npm install (Y)