name: 'BrowserStack Test' on: [push, pull_request] 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@v2 - name: Copy configuration run: cp config.json.example config.json - name: 'Building web application to be tested' run: npm install # - name: 'Running application under test' # run: npm test - name: 'Running test on BrowserStack' run: npm test - name: 'BrowserStackLocal Stop' # Terminating the BrowserStackLocal tunnel connection uses: browserstack/github-actions/setup-local@master with: local-testing: stop