Parallel "--by pool" not working, hanging and spamming startup banner
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 48/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- javascript, node.js
- Bereich
- testing-qa
Rechercherichtung
Beginne mit dem in der verlinkten Dokumentation beschriebenen dynamischen Test-Pooling-Modus und verfolge den Lebenszyklus der Worker rund um _finishRun(). Reproduziere den Hänger mit Puppeteer und verifiziere, dass die Worker sauber beendet werden und das Startbanner nur einmal und nicht für jede Testzuweisung ausgegeben wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
We have historically suffered from idle workers due to the wide range of test duration, so when I saw the --by pool mode I thought we'd be able to speed up our tests for free basically ;) (ref: https://codecept.io/parallel/#dynamic-test-pooling-mode)
But it seems to not be working as expected. A couple of issues I noticed:
- When I run with pool mode it seems to just hang after a certain amount of time without any clear reason why.
We're using Puppeteer, and my suspicion is that the browser's WebSocket connection keeps the Node event loop alive in the worker thread after the port is closed, so the parent never sees the worker exit and _finishRun() never gets called.
- Also, the startup message is fired every time a worker takes a test, so the output gets absolutely hammered which is not ideal for CI
e.g. (example output)
CodeceptJS v3.7.7 #StandWithUkraine
Running tests in 1 workers...
CodeceptJS v3.7.7 #StandWithUkraine
Using test root "/home/user/project"
Login suite --
[Worker 01] ✔ Login suite › User can log in in 3401ms
✔ User can log in in 3401ms
OK | 1 passed // 4s
CodeceptJS v3.7.7 #StandWithUkraine
Using test root "/home/user/project"
Login suite --
[Worker 01] ✔ Login suite › User sees error on bad credentials in 2980ms
✔ User sees error on bad credentials in 2980ms
OK | 2 passed // 8s
CodeceptJS v3.7.7 #StandWithUkraine
Using test root "/home/user/project"
...
- Vorherrschende Sprache
- JavaScript
- Sterne
- 4.2k
- Forks
- 756
- Ø Merge
- 2 T. 9 Std.
- Gemergte PRs (30 T.)
- 16
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus codeceptjs/CodeceptJS
-
stale
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
codeceptjs/CodeceptJS#5420 · 1 Kommentar ·
-
stale
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
codeceptjs/CodeceptJS#5358 · 1 Kommentar ·
-
stale
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
codeceptjs/CodeceptJS#4958 · 10 Kommentare · 2 Reaktionen ·
-
stale
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
codeceptjs/CodeceptJS#4778 · 3 Kommentare ·
-
stale
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
codeceptjs/CodeceptJS#5618 · 1 Kommentar ·
Alle Issues in codeceptjs/CodeceptJS
Ähnliche Issues
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
avniproject/avni-client#2135 ·
-
automated broken-link
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
-
agent/security hive/hosted-available-lke648397-260827-5n31 security
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
babalae/bettergi-scripts-list#3674 ·
-
A-Release-Notes C-Editing D-Modest S-Ready-For-Implementation
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
bevyengine/bevy-website#2595 ·