545e421423
Github action CI workflows added for webdriver tests.
I've also refactored the `./scripts/e2e-*` scripts. These scripts were
somewhat unique compared to the other scripts. They are now more inline
with the other scripts in that directory and run via
```
% yarn e2e --help
Usage: yarn e2e <command> [options]
Commands:
yarn e2e serve start test server
yarn e2e test:ci [env] runner for CI (github-actions)
yarn e2e test:local run webdriver tests locally
yarn e2e test:browserstack run webdriver tests on browserstack
yarn e2e selenium:grid start selenium grid (test linux)
Options:
--help Show help [boolean]
--version Show version number [boolean]
```
I've also added an experimental linux runner see
2cca4ddb77/e2e/README.md (L320-L333)
### Change Type
- [x] `tests` — Changes to any testing-related code only (will not
publish a new version)
### Release Notes
- Github action CI workflows added for webdriver tests
- Refactored e2e test runner
65 lines
1.6 KiB
YAML
65 lines
1.6 KiB
YAML
name: Webdriver nightly (browserstack)
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: '0 2 * * *' # run at 2 AM UTC
|
|
|
|
jobs:
|
|
test:
|
|
name: 'nightly'
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest-16-cores-open]
|
|
node-version: [16]
|
|
|
|
container:
|
|
image: node:${{ matrix.node-version }}
|
|
options: --network-alias testhost
|
|
volumes:
|
|
- /home/runner/work/_temp/e2e:/home/runner/work/_temp/e2e
|
|
|
|
steps:
|
|
# start browserstack
|
|
- name: 'BrowserStack Env Setup' # Invokes the setup-env action
|
|
uses: browserstack/github-actions/setup-env@master
|
|
with:
|
|
username: jamieblair_YXsTBS
|
|
access-key: BUcyZn9PF4iwKgayXinm
|
|
- name: 'BrowserStack Local Tunnel Setup' # Invokes the setup-local action
|
|
uses: browserstack/github-actions/setup-local@master
|
|
with:
|
|
local-testing: start
|
|
local-identifier: random
|
|
|
|
- name: Check out code
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
submodules: true
|
|
|
|
- name: Setup Node.js environment
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
cache: 'yarn'
|
|
cache-dependency-path: 'public-yarn.lock'
|
|
|
|
- name: Enable corepack
|
|
run: corepack enable
|
|
|
|
- name: Install dependencies
|
|
run: yarn
|
|
|
|
- name: Run server
|
|
run: yarn dev-webdriver &
|
|
|
|
- run: yarn e2e test:ci nightly
|
|
env:
|
|
CI: true
|
|
DOWNLOADS_DIR: '/home/runner/work/_temp/e2e/'
|
|
TEST_URL: 'https://testhost:5421'
|
|
WB_BUILD_NAME: 'nightly'
|