ci: Add browserstack workflow #1
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: 'BrowserStack Test' | |
on: [push, pull_request, workflow_dispatch] | |
jobs: | |
ubuntu-job: | |
name: 'BrowserStack Test on Ubuntu' | |
runs-on: ubuntu-latest # Can be self-hosted runner also | |
steps: | |
- name: 'BrowserStack Env Setup' # Invokes the setup-env action | |
uses: browserstack/github-actions/setup-env@master | |
with: | |
username: ${{ secrets.BROWSERSTACK_USERNAME }} | |
access-key: ${{ secrets.BROWSERSTACK_ACCESS_KEY }} | |
- name: 'BrowserStack Local Tunnel Setup' # Invokes the setup-local action | |
uses: browserstack/github-actions/setup-local@master | |
with: | |
local-testing: start | |
local-identifier: random | |
# The next 3 steps are for building the web application to be tested and starting the web server on the runner environment | |
- name: 'Checkout the repository' | |
uses: actions/checkout@v3 | |
- name: 'Run NPM CI' | |
run: npm ci | |
# ensures the tests are es5 compatible | |
- name: 'Run NPM build:CBT' | |
run: npm build:CBT | |
- name: 'Run Browserstack Tests' | |
run: npm run test:browserstack | |
- name: 'BrowserStackLocal Stop' # Terminating the BrowserStackLocal tunnel connection | |
uses: browserstack/github-actions/setup-local@master | |
with: | |
local-testing: stop |