Files
starter-workflows/ci/cypress.yml
T

46 lines
1.1 KiB
YAML

name: Cypress
on: [push]
env:
CI: 1 # minimal progress output
TERM: xterm # good terminal rendering
jobs:
e2e:
name: Cypress tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Cache NPM modules
uses: actions/cache@v1
with:
path: ~/.npm
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
- name: Cache Cypress binary
uses: actions/cache@v1
with:
path: ~/.cache/Cypress
key: ${{ runner.os }}-cypress-${{ hashFiles('**/package.json') }}
restore-keys: |
${{ runner.os }}-cypress-
- name: install Cypress
run: |
npm ci
npx cypress verify
- name: E2E tests
run: npx cypress run
# save any error screenshots as test artifacts
- uses: actions/upload-artifact@v1
if: failure()
with:
name: screenshots
path: cypress/screenshots
# video should always be generated
- uses: actions/upload-artifact@v1
with:
name: videos
path: cypress/videos