Archiviazione e manutenzione automatica: perché il disco non si riempie
Una suite che esegue migliaia di test al giorno scrive evidenze tutto il giorno: video, tracce, schermate e report. Nexus Studio ne limita autonomamente lo spazio occupato. Ogni cartella ha un limite per test, tutte le evidenze condividono un unico budget e sul disco viene mantenuta una soglia minima di spazio libero. Questa pagina spiega cosa cresce, cosa viene eliminato per primo, cosa non viene mai eliminato e quanto spazio occupano sul disco 10.000 esecuzioni al giorno.
A cura del team di Nexus Studio, Verdict System LLC. 9 ottobre 2026.
Cosa cresce, e perché resta entro i limiti
Ogni esecuzione scrive qualcosa. Un test superato conserva una schermata e i relativi metadati. Un test fallito conserva una cartella: report.md, metadata.json, raw-data.json, screenshot.png e, in caso di errore effettivo, video.webm e trace.zip. Le esecuzioni API, di caos, Smart Monkey, di carico e di regressione visiva conservano cartelle proprie, e ogni esecuzione aggiunge una riga alla Cronologia e file temporanei alla cache delle esecuzioni.
Un limite per test non basta da solo. Conservare 20 esecuzioni fallite è poco per un solo test, ma riempie il disco con 10.000 test. Il motore limita quindi lo spazio di archiviazione su due livelli: un limite per test e un unico budget per tutte le evidenze, che non cresce con il numero di test.
Primo livello: un limite per test
Per ogni tipo di evidenza viene conservato un numero fisso di esecuzioni, le più recenti. Questi sono i valori predefiniti:
| Evidenze | Conservati per impostazione predefinita | Impostazione |
|---|---|---|
| Test falliti | Le 20 esecuzioni più recenti per test e browser | NEXUS_BUGREPORT_RETAIN |
| Test superati | Le 5 esecuzioni più recenti per test e browser | NEXUS_PASSED_RETAIN |
| Esecuzioni API | Le 20 esecuzioni superate più recenti per test API. Le esecuzioni fallite non hanno un limite proprio: le limita il budget. | NEXUS_API_EVIDENCE_KEEP |
| Esecuzioni con perturbazioni | Le 20 esecuzioni più recenti che hanno retto per test e browser. Le esecuzioni che hanno ceduto non hanno un limite proprio: le limita il budget. | NEXUS_CHAOS_RETAIN |
| Regressioni visive | Le 10 più recenti per test e punto di controllo | NEXUS_VISUAL_REGRESSION_RETAIN |
| Sessioni Smart Monkey | Le 10 più recenti | NEXUS_MONKEY_RETAIN |
| Contesto di esecuzione | Le 100 esecuzioni più recenti | NEXUS_RUN_CONTEXT_RETAIN |
| History | Le 50 righe più recenti per test e browser | NEXUS_HISTORY_RETAIN |
| Archivio di telemetria | Al massimo 2 zip, nessuno più vecchio di 7 giorni, 500 MB in totale | NEXUS_CACHE_ZIPS, NEXUS_CACHE_RETENTION_DAYS, NEXUS_CACHE_MAX_MB |
Ognuno corrisponde a una riga nel file .env dell'area di lavoro. Da Impostazioni è possibile modificarli tutti tranne i tre limiti di telemetria.
Secondo livello: un unico budget per tutte le evidenze, e una soglia minima di spazio libero
NEXUS_EVIDENCE_MAX_GB, 20 GB per impostazione predefinita, limita lo spazio complessivo di tutte le evidenze: errori, test superati, API, caos, Smart Monkey, esecuzioni di carico e di regressione visiva. Non cresce con il numero di test. Con 100 test o 10.000, le evidenze restano sotto questo limite.
NEXUS_MIN_FREE_GB, 10 GB per impostazione predefinita, è lo spazio libero da mantenere sul disco. Quando lo spazio disponibile scende sotto questa soglia, le evidenze meno recenti vengono eliminate anche se il totale è ancora inferiore allo spazio assegnato.
Quando uno dei due limiti viene superato, il motore rimuove intere cartelle di esecuzione, in questo ordine:
- Esecuzioni superate e regressioni visive, a partire dalle meno recenti.
- Poi le esecuzioni non riuscite, a partire dalle meno recenti.
- Si ferma non appena le evidenze occupano meno dello spazio assegnato e lo spazio libero sul disco supera la soglia minima.
Se rimane solo l'esecuzione più recente di ciascun test e il totale supera ancora lo spazio assegnato, il motore lo segnala al termine dell'esecuzione: aumentare lo spazio assegnato, oppure archiviare ciò che serve ed eliminare le esecuzioni meno recenti. La soglia minima agisce solo sulle evidenze. Quando altri file riempiono il disco, il motore elimina le proprie evidenze fino a lasciare solo l'esecuzione più recente di ciascun test, e lo Studio continua a segnalare che lo spazio sul disco è insufficiente.
Cosa non viene mai eliminato
- L'esecuzione più recente per ciascun test e browser, oltre alla sessione Smart Monkey e all'esecuzione di carico più recenti. L'esecuzione appena terminata è sempre la più recente del proprio tipo.
- Archivio. Le copie che si sceglie di conservare con Archivia… nell'Archivio delle evidenze si trovano accanto alla cartella delle evidenze, non al suo interno. Non sono soggette né ai limiti né allo spazio assegnato.
- Cronologia. La rimozione di una cartella di esecuzione non elimina la riga dell'esecuzione. La cronologia ha un proprio intervallo di conservazione, pari a 50 esecuzioni per test e browser per impostazione predefinita.
- La catena di custodia. Il registro consente solo l'aggiunta di voci e non viene mai ridotto.
L'eliminazione delle evidenze sigillate viene registrata
La sigillatura è facoltativa. Un record sigillato calcola l'hash SHA-256 di ogni file della propria cartella e si concatena al record precedente, quindi una cartella sigillata che scomparisse senza alcuna annotazione apparirebbe esattamente come una manomissione.
Prima che il limite di spazio assegnato causi la rimozione di una cartella sigillata, il motore aggiunge al registro una voce PURGE, indicando tale limite come causa della rimozione e specificando quando è avvenuta. Il registro continua ad attestare l'hash della cartella e nexus verify segnala il record come PURGED, non come manomesso. Se il registro non può registrare la voce PURGE, la cartella viene conservata.
Cosa viene eseguito automaticamente, e quando
Il motore esegue la propria manutenzione dopo ogni esecuzione, in ogni modalità: un singolo test, una suite, un ciclo, una pianificazione Watch, esecuzioni Selenium, pytest e API.
- Lo spazio libero viene controllato dopo ogni esecuzione.
- Lo spazio occupato dalle evidenze viene misurato al massimo ogni 15 minuti, oppure immediatamente quando lo spazio libero sul disco scende sotto la soglia minima. Questo intervento rimuove le esecuzioni meno recenti finché entrambi i limiti non sono rispettati.
- I file temporanei vengono eliminati. I file dei risultati di ogni esecuzione e i registri dell'applicazione sottoposta a test vengono eliminati dopo 24 ore. Dei registri degli errori di configurazione vengono conservati i 14 file più recenti. Anche le cartelle lasciate da un'esecuzione interrotta nella cartella temporanea di Windows vengono eliminate dopo 24 ore.
- La cartella di output temporaneo di Playwright viene svuotata all'inizio e alla fine di ogni esecuzione.
- I registri vengono ruotati al raggiungimento di 10 MB.
- I file temporanei di telemetria vengono inseriti in un archivio zip dopo ogni esecuzione, nel rispetto dei tre limiti indicati sopra.
Cosa viene mostrato nello Studio
Area di lavoro › Disco mostra:
- lo spazio occupato dalle evidenze rispetto a quello assegnato;
- lo spazio libero sul disco rispetto alla soglia minima;
- quando è stato eseguito l'ultimo controllo e quanto spazio ha liberato l'ultimo intervento;
- Esegui manutenzione ora, che avvia immediatamente lo stesso intervento anziché attendere la fine della prossima esecuzione.
Quando lo spazio libero scende sotto la soglia minima, lo Studio mostra un avviso di spazio su disco insufficiente. Entrambi i limiti si trovano nelle Impostazioni, sotto Evidenze & Conservazione. Lo stesso pannello elenca tutte le cartelle in cui un'esecuzione scrive, con dimensioni e limiti: cosa conserva ogni esecuzione.
Docker e host remoti
Il motore può eseguire suite in Docker su questa macchina o in un container su un server Linux tramite SSH. Lo Studio rimane su Windows.
- I registri dei container sono limitati a tre file da 10 MB per servizio, così un container in esecuzione per mesi non riempie l'host con il proprio output.
- Il runner GitHub autogestito si registra una sola volta. Un riavvio riutilizza la registrazione esistente anziché effettuarne una nuova.
- Il motore su quell'host è lo stesso, con gli stessi limiti, lo stesso spazio assegnato e la stessa soglia minima per le evidenze che vi scrive.
Un esempio pratico: 10.000 esecuzioni al giorno
Questa è una stima, non una misurazione. Si ipotizzano:
- 10.000 esecuzioni di test al giorno;
- 5% di esecuzioni non riuscite, quindi 500 al giorno;
- circa 3 MB per ogni cartella di esecuzione non riuscita: video, traccia, schermata e dati.
Si tratta di circa 1.5 GB di evidenze relative agli errori al giorno. Con il limite predefinito di 20 GB, sul disco rimangono gli errori delle ultime due settimane circa, e le evidenze non superano mai i 20 GB complessivi. I test superati vengono eliminati per primi, così lo spazio è riservato agli errori, cioè alle evidenze di cui è più probabile aver bisogno.
La stima di 3 MB presuppone che vengano conservati sia il video sia la traccia. La cartella BREACHED nella pagina delle evidenze occupa 531.2 kB senza la relativa traccia.
Ottimizzazione per suite di grandi dimensioni
- Più cronologia: aumenta
NEXUS_EVIDENCE_MAX_GB. Su un disco da 1 TB, un limite di 200 GB conserva dieci volte la quantità predefinita, circa quattro mesi di errori a 1.5 GB al giorno. I limiti per test restano validi: un test conserva al massimo le sue 20 esecuzioni non riuscite, a meno che non aumenti ancheNEXUS_BUGREPORT_RETAIN. - Meno dati per errore: disattiva la traccia con
NEXUS_TRACE_ENABLED=false, oppure conserva i video per un numero minore di esiti conNEXUS_VIDEO_VERDICTS. Lo stesso limite di spazio coprirà così più giorni. - Spazio per altri programmi: aumenta
NEXUS_MIN_FREE_GBse il computer richiede più di 10 GB di spazio libero. - Test eseguiti molte volte al giorno: aumenta
NEXUS_HISTORY_RETAIN, ad esempio a 500, affinché la Cronologia copra più di qualche giorno. - Un errore da conservare: archivialo da Evidence Locker prima che venga eliminato per anzianità.
Domande
Riempirà il disco se eseguo 10,000 test al giorno?
Non con i dati di prova. Questi restano entro il limite di spazio, pari a 20 GB per impostazione predefinita, indipendentemente dal numero di test eseguiti, e il motore rimuove i dati di prova meno recenti per mantenere liberi 10 GB sul disco. Più esecuzioni al giorno significano che i dati di prova coprono un periodo più breve, non che occupano più spazio. I file esterni ai dati di prova, come le immagini Docker o le tue aree di lavoro, non rientrano nel limite.
La pulizia può eliminare un errore che mi serve?
Sì, quando l'errore è abbastanza vecchio: superato il limite di spazio, vengono eliminate le esecuzioni meno recenti, prima quelle riuscite e poi quelle non riuscite, mentre l'ultima esecuzione di ogni test e browser viene sempre conservata. Per conservare un errore definitivamente, scegli Archivia… in Evidence Locker. La copia si trova fuori dalla cartella dei dati di prova e non è soggetta né ai limiti per test né al limite di spazio.
Un record sigillato risulterà manomesso dopo la pulizia?
No. La voce PURGE viene prima inserita nel registro e nexus verify segnala il record come PURGED.
Cosa succede quando il disco è quasi pieno?
Al di sotto della soglia minima, pari a 10 GB per impostazione predefinita, il motore misura subito lo spazio occupato dai dati di prova invece di attendere il controllo ogni 15 minuti, rimuove quelli meno recenti anche se il limite di spazio non è stato raggiunto e Studio mostra un avviso di spazio su disco insufficiente. Se lo spazio è occupato da altri file, libera quanto può e continua a mostrare l'avviso.
Devo fare qualcosa?
No. La pulizia viene eseguita dopo ogni esecuzione. Esegui manutenzione ora, in Area di lavoro › Disco, la avvia subito.