Naar inhoud springen

Toneelschrijver

Toneelschrijver CI op GitHub Actions

Browserdownloads en seriële testuitvoeringen domineren elke run.

75s → 3s
Browser installeren
32m → 6m
E2E-suite

Browserdownloads en seriële testuitvoeringen domineren elke run.

Waarom het gebeurt

Playwright downloadt bij elke run browserbinaire bestanden en gebruikt standaard beperkte werkers in CI.

Wat te veranderen

  1. Cache ~/.cache/ms-playwright ingetoetst op de Playwright-versie
  2. Stel werknemers in op het aantal kernkernen in plaats van op de CI-standaard van één
  3. Shard over hardlopers met --shard en voeg de blobrapporten samen
  4. Installeer alleen de browsers die u daadwerkelijk test

Toneelschrijver over runnerhut

yaml
jobs:
e2e:
strategy:
matrix:
shard: [1, 2, 3, 4]
runs-on: runnerhut-8vcpu-ubuntu-2404
steps:
- uses: actions/checkout@v4
- run: npm ci
- run: npx playwright install --with-deps chromium
- run: npx playwright test --shard=${{ matrix.shard }}/4 --workers=8
Een werkend uitgangspunt

De enige runnerhut-specifieke regel is `runs-on: runnerhut-8vcpu-ubuntu-2404`. Al het andere is standaard GitHub Actions — dezelfde acties, dezelfde geheimen en hetzelfde machtigingsmodel dat u vandaag de dag gebruikt.

Je volgende build kan twee keer zo snel zijn, voor de halve prijs

Begin gratis. Weggaan is dezelfde ene regel, en die diff publiceren we ook.