Leitfäden
So teilen Sie Tests über eine Matrix hinweg auf
Ein langer Testauftrag dominiert die Pipeline.
6 Min. Lesezeit
Ein langer Testauftrag dominiert die Pipeline.
Warum es passiert
Die Suite läuft seriell auf einer Maschine, obwohl die Tests unabhängig voneinander sind.
So beheben Sie das Problem
- Aufteilung nach historischer Dauer und nicht nach Dateianzahl, sodass die Shards gemeinsam abgeschlossen werden
- Verwenden Sie das native Sharding-Flag Ihres Runners, sofern vorhanden (--shard, --split-by).
- Führen Sie Shard-Berichte in einer Zusammenfassung zusammen, damit Fehler lesbar bleiben
- Gesamtkosten ansehen: Vier Shards für vier Minuten kosten dasselbe wie ein Job für sechzehn
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
So beschleunigen Sie GitHub ActionsIhre Pipeline braucht länger, als irgendjemand warten möchte, und es ist nicht klar, wo die Zeit vergeht.So finden Sie den langsamen Schritt in einem WorkflowDie Pipeline ist langsam, aber jeder einzelne Schritt sieht vernünftig aus.So reduzieren Sie GitHub Actions KaltstartsJobs ruhen 30 bis 90 Sekunden, bevor der erste Schritt ausgeführt wird.So diagnostizieren Sie GitHub Actions WarteschlangenzeitenAufträge stehen minutenlang in der Warteschlange, bevor ein Läufer sie abholt.