Scherz
Jest CI auf GitHub Actions
Jest transformiert jede Datei bei jedem Lauf und verwendet einen Worker in CI.
90er → 8er
Verwandeln Sie die Zeit
14m → 3m
Testsuite
Jest transformiert jede Datei bei jedem Lauf und verwendet einen Worker in CI.
Warum es passiert
Der Jest-Transformationscache wird nicht beibehalten und die Standardeinstellungen von --ci sind hinsichtlich der Worker konservativ.
Was zu ändern ist
- Cachen Sie das Jest-Cache-Verzeichnis, das auf der Sperrdatei und der Konfiguration basiert, zwischen
- Setzen Sie --maxWorkers auf die Kernanzahl, anstatt den Standardwert zu akzeptieren
- Verwenden Sie --shard in einer Matrix für Suiten, die länger als zehn Minuten dauern
- Schalten Sie den Transformator auf SWC oder esbuild um – Babel ist normalerweise der Engpass
Scherz über runnerhut
Die einzige runnerhut-spezifische Zeile ist „runs-on: runnerhut-8vcpu-ubuntu-2404“. Alles andere sind Standard-GitHub Actions – dieselben Aktionen, dieselben Geheimnisse und dasselbe Berechtigungsmodell, das Sie heute verwenden.
Ihr nächster Build könnte doppelt so schnell sein — zum halben Preis
Kostenlos starten. Der Wechsel zurück ist dieselbe eine Zeile — auch dieses Diff veröffentlichen wir.
Verwandt
DramatikerBrowser-Downloads und serielle Testausführungen dominieren jeden Durchlauf.ZypresseDie Cypress-Binärdatei lädt jeden Lauf herunter und führt die Spezifikationen seriell aus.VitestVitest optimiert Abhängigkeiten neu und läuft in einem einzigen Thread-Pool.pytestPytest läuft auf einem Kern, während der Läufer acht im Leerlauf hat.