Gestire test in flaky
Servizi di Azure DevOps
La produttività per gli sviluppatori si basa sulla capacità dei test di trovare problemi reali con il codice in fase di sviluppo o aggiornamento in modo tempestivo e affidabile. I test flaky presentano una barriera alla ricerca di problemi reali, poiché spesso gli errori non sono correlati alle modifiche da testare. Un test in flaky è un test che fornisce risultati diversi, ad esempio il superamento o l'esito negativo, anche quando non sono presenti modifiche nel codice sorgente o nell'ambiente di esecuzione. I test flaky influisce anche sulla qualità del codice spedito.
Nota
Questa funzionalità è disponibile solo in Azure DevOps Services. In genere, le nuove funzionalità vengono introdotte prima nel servizio cloud e quindi rese disponibili in locale nella versione principale successiva o nell'aggiornamento di Azure DevOps Server. Per altre informazioni, vedere Sequenza temporale delle funzionalità di Azure DevOps.
L'obiettivo di portare la gestione dei test in-product in flaky consiste nel ridurre il dolore dello sviluppatore causato da test instabilità e soddisfare l'intero flusso di lavoro. La gestione dei test flaky offre i vantaggi seguenti.
Rilevamento - Rilevamento automatico di test instabilità con riesecuzione o estendibilità per collegare il proprio metodo di rilevamento personalizzato
Gestione della flakiness : dopo che un test è contrassegnato come non corretto, i dati sono disponibili per tutte le pipeline per tale ramo
Report su test in flaky : possibilità di scegliere se si desidera evitare errori di compilazione causati da test instabilità o usare il tag flaky solo per la risoluzione dei problemi
Risoluzione : creazione manuale di bug o contrassegno manuale e test di annullamento del contrassegno come instabilità in base all'analisi
Chiudere il ciclo - Reimpostare il test in formato flaky in seguito alla risoluzione dei bug/input manuale
Abilitare la gestione dei test in flaky
Per configurare la gestione dei test in flaky, scegliere Impostazioni progetto e selezionare Gestione test nella sezione Pipeline.
Scorrere il pulsante On/Off su Sì.
L'impostazione predefinita per tutti i progetti consiste nell'usare test in formato flaky per la risoluzione dei problemi.
Rilevamento test inattendibili
La gestione dei test flaky supporta il rilevamento di sistema e personalizzato.
Rilevamento del sistema: il rilevamento in-product usa i dati di riesecuzione dei test. Il rilevamento avviee tramite la ripetizione dell'attività VSTest della funzionalità di test non superati o la ripetizione di tentativi di fase nella pipeline. È possibile selezionare pipeline specifiche nel progetto per cui si desidera rilevare i test instabilità.
Nota
Dopo che un test è contrassegnato come non corretto, i dati sono disponibili per tutte le pipeline per tale ramo per facilitare la risoluzione dei problemi in ogni pipeline.
Rilevamento personalizzato: è possibile integrare il proprio meccanismo di rilevamento con Azure Pipelines e usare la funzionalità di creazione di report. Con il rilevamento personalizzato, è necessario aggiornare i metadati dei risultati del test per i test non corretti. Per informazioni dettagliate, vedere Risultati dei test, Metadati dei risultati - Aggiornare l'API REST.
Opzioni di test flaky
Le opzioni di test Flaky specificano la modalità di disponibilità dei test in report di test e le funzionalità di risoluzione, come descritto nelle sezioni seguenti.
Gestione e creazione di report di test flaky
Nella pagina Gestione test in Opzioni di test Flaky è possibile impostare le opzioni per la modalità di inserimento dei test in flaky nel report Riepilogo test. I dati dei test flaky per i test superati e non superati sono disponibili nei risultati dei test. Il tag Flaky consente di identificare i test flaky. Per impostazione predefinita, i test in flaky sono inclusi nel riepilogo dei test. Tuttavia, se si vuole assicurarsi che gli errori di test non vengano superati dalla pipeline, è possibile scegliere di non includerli nel riepilogo dei test e eliminare l'errore di test. Questa opzione garantisce che i test in flaky (superati e non superati) vengano rimossi dalla percentuale di superamento e mostrati in Test non segnalati, come illustrato nello screenshot seguente.
Nota
Il report di riepilogo test viene aggiornato solo per l'attività Test di Visual Studio e l'attività Pubblica risultati test. Potrebbe essere necessario aggiungere uno script personalizzato per eliminare l'errore di test non riuscito per altri scenari.
Test contrassegnati come instabilità
È possibile contrassegnare o annullare il contrassegno di un test in base all'analisi o al contesto scegliendo Flaky (o UnFlaky, a seconda che il test sia già contrassegnato come flaky).
Quando un test è contrassegnato come inaffidabile o inflessibile in una pipeline, non vengono apportate modifiche nella pipeline corrente. Solo nelle esecuzioni future del test viene valutata l'impostazione non corretta. I test contrassegnati come flaky hanno il tag Contrassegnato come flaky nell'interfaccia utente.
Assistenza e supporto
- Vedere la pagina relativa alla risoluzione dei problemi
- Ottenere consigli su Stack Overflow e ottenere supporto tramite la community degli sviluppatori