Due numeri per la stessa copertura non sono una misura - #19
Closed
Alessandro114 wants to merge 1 commit into
Closed
Alessandro114 wants to merge 1 commit into
Alessandro114 wants to merge 1 commit into
Conversation
La CI misurava la copertura su tutte e due le versioni della matrice e dava due risultati diversi per lo stesso codice: Node 20 64,69% (6381/9863) Node 22 60,34% (5952/9863) Avevo detto che su Node 22 qualcosa non veniva eseguito. Sbagliato, e l'ho verificato leggendo i registri di entrambi i job: 16 test passati, 0 falliti, 0 saltati, su tutte e due. Gli stessi test, tutti. La causa e che c8 legge la copertura dal profilo di V8, e il V8 di Node 22 attribuisce le righe in modo diverso da quello di Node 20. Stesso codice, stessa suite, 429 righe di scarto nel modo di CONTARLE. Il problema non e quale dei due numeri sia giusto: e che ce ne siano due. Un numero che dipende da quale job si guarda non si puo confrontare nel tempo, e la prima volta che qualcuno dice 'la copertura e scesa' nessuno sa se e vero. Ora i test girano su tutte e due le versioni — la matrice serve a questo — e la copertura si misura SOLO su Node 20, che e la versione del Dockerfile (node:20-alpine), cioe quella che gira davvero in produzione. Quindi da adesso il numero di riferimento e 64,69%, e il bersaglio dell'80% si misura da li. Session-Id: 75828d
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
La CI misurava la copertura su entrambe le versioni della matrice e dava due risultati diversi per lo stesso codice:
Avevo detto che su Node 22 qualcosa non veniva eseguito. Sbagliato, e l'ho verificato leggendo i registri di entrambi i job: 16 test passati, 0 falliti, 0 saltati, su tutte e due. Gli stessi test, tutti.
La causa è che
c8legge la copertura dal profilo di V8, e il V8 di Node 22 attribuisce le righe in modo diverso da quello di Node 20. Stesso codice, stessa suite, 429 righe di scarto nel modo di contarle.Il problema non è quale dei due numeri sia giusto: è che ce ne siano due. Un numero che dipende da quale job si guarda non si può confrontare nel tempo, e la prima volta che qualcuno dice "la copertura è scesa" nessuno sa se è vero.
Ora i test girano su entrambe le versioni — la matrice serve a questo — e la copertura si misura solo su Node 20, che è la versione del Dockerfile (
node:20-alpine), cioè quella che gira davvero.Da adesso il numero di riferimento è 64,69%, e il bersaglio dell'80% si misura da lì.