Eseguire i test automatizzati dai piani di test

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Automatizzare i test case nei piani di test ed eseguirli direttamente da Piani di test di Azure. I test automatizzati offrono i vantaggi seguenti:

  • Processo intuitivo per i tester che potrebbero non essere esperti con l'esecuzione di test nei flussi di lavoro di compilazione o rilascio.
  • La flessibilità di eseguire test selezionati su richiesta, anziché i test pianificati nei flussi di lavoro di compilazione o rilascio in cui vengono eseguiti tutti i test che soddisfano i criteri di filtro.
  • Possibilità di rieseguire alcuni test non riusciti a causa di problemi di infrastruttura di test o di una nuova compilazione che include correzioni per i test non superati.

Prerequisiti

  • È inoltre necessario disporre degli elementi seguenti.

Configurazione dell'ambiente

  1. Nella pagina Piani di test scegliere il piano di test, aprire il menu di scelta rapida e quindi selezionare Impostazioni piano di test.

    Screenshot che mostra la scelta delle impostazioni del piano di test.

  2. Nella finestra di dialogo Impostazioni piano di test selezionare la pipeline di compilazione che genera compilazioni che contengono i file binari di test. È quindi possibile selezionare un numero di build specifico da testare oppure consentire al sistema di usare automaticamente la build più recente quando vengono eseguiti i test.

    Screenshot che mostra la selezione del numero di build e build.

  3. È necessaria una pipeline di versione creata dal modello Esegui test automatizzati da Test Manager per eseguire test dai piani di test in Piani di test di Azure. Se è stata creata una pipeline di versione esistente usando questo modello, selezionarla e quindi selezionare la fase esistente nella pipeline di versione per l'esecuzione del test. In caso contrario, selezionare Crea nuovo nella finestra di dialogo per creare una nuova pipeline di versione contenente una singola fase con l'attività Test di Visual Studio già aggiunta.

    Screenshot che mostra la selezione di una pipeline di versione o la creazione di una nuova pipeline.

    Ricerca per categorie passare parametri al codice di test da una pipeline di compilazione o versione?

  4. Assegnare nomi significativi alla pipeline di versione e alla fase in base alle esigenze.

  5. Se Visual Studio è già installato nel computer agente, ignorare questo passaggio. In caso contrario, aggiungere l'attività Programma di installazione della piattaforma di test di Visual Studio alla definizione della pipeline.

  6. Aggiungere l'attività Test di Visual Studio alla pipeline di versione e configurarla come indicato di seguito:

    • Verificare che sia selezionata la versione 2 dell'attività Test di Visual Studio. Il numero di versione viene visualizzato nell'elenco a discesa del pannello delle impostazioni dell'attività.

      Screenshot che mostra la verifica dell'impostazione del numero di versione dell'attività.

    • Verificare che Selezionare i test con sia impostato su Esecuzione test. Cosa significa questa impostazione?

      Screenshot che mostra la verifica dell'impostazione del metodo di selezione del test.

    • Per l'impostazione Versione della piattaforma di test selezionare Installato dal programma di installazione strumenti.

      Screenshot che mostra l'impostazione dell'opzione del programma di installazione.

    • Se sono presenti test dell'interfaccia utente eseguiti su browser fisici o client di spessore, assicurarsi che l'agente sia impostato per l'esecuzione come processo interattivo con l'accesso automatico abilitato. È necessario configurare un agente per l'esecuzione interattiva prima di accodare la compilazione o il rilascio. La casella di controllo Combinazione di test contiene test dell'interfaccia utente non configura automaticamente l'agente in modalità interattiva, usata solo come promemoria per configurare l'agente in modo appropriato per evitare errori.

    • Se si eseguono test dell'interfaccia utente in un browser headless, la configurazione interattiva del processo non è necessaria.

    • Selezionare la modalità di provisioning della piattaforma di test e la versione di Visual Studio o il percorso della piattaforma di test installata nei computer di test.

    • Se i test necessitano di parametri di input, ad esempio URL dell'app o stringa di connessione di database, selezionare il file di impostazioni pertinente dagli artefatti di compilazione. È possibile usare le attività Pubblica artefatti di compilazione nella pipeline di compilazione per pubblicare il file di impostazioni in un percorso di rilascio se questo file non è incluso negli artefatti. Nell'esempio seguente l'URL dell'applicazione viene esposto nel file delle impostazioni di esecuzione ed è sottoposto a override per impostarlo su un URL di staging usando l'impostazione Override test run parameters .

      Screenshot che mostra la specifica delle proprietà per l'attività Test di Visual Studio.

      Per informazioni sulle impostazioni delle opzioni dell'attività Test di Visual Studio, vedere Attività test di Visual Studio.

  7. Scegliere l'elemento del processo agent e verificare che la coda di distribuzione sia impostata su quella contenente i computer in cui si desidera eseguire i test. Se i test richiedono computer speciali dal pool di agenti, è possibile aggiungere richieste selezionate in fase di esecuzione.

    Screenshot che mostra la specifica delle proprietà per il processo di Agent.

    È possibile ridurre al minimo i tempi di test distribuendo i test tra più agenti impostando Parallelism su Più esecuzioni e specificando il numero di agenti.

    Nota

    Se si eseguono test dell'interfaccia utente come CodeUI o Selenium in browser fisici come Internet Explorer, Firefox o Chrome, l'agente nei computer deve essere in esecuzione in modalità interattiva e non come servizio. Altre informazioni.

  8. Nella pagina Pipeline della pipeline di versione verificare che la pipeline di compilazione contenente i file binari di test sia collegata a questa pipeline di versione come origine artefatto.

    Screenshot che mostra la verifica degli artefatti di compilazione collegati.

  9. Salvare la pipeline di versione.

  10. Se si sceglie Crea nuovo nella finestra di dialogo Impostazioni piano di test nel passaggio 2 di questo esempio, tornare alla pagina del browser contenente le impostazioni del piano di test. Nella finestra di dialogo Impostazioni piano di test selezionare la pipeline di versione e la fase salvata.

    Screenshot che mostra la selezione della pipeline di versione e della fase.

Eseguire i test automatizzati

  1. Nel portale Web Piani di test aprire il piano di test e selezionare un gruppo di test contenente i test automatizzati.

  2. Selezionare i test da eseguire, aprire il menu Esegui e quindi selezionare Esegui test.

    Screenshot che mostra la selezione di Esegui test.

    I file binari di test per questi test devono essere disponibili negli artefatti di compilazione generati dalla pipeline di compilazione.

  3. Selezionare OK per avviare il processo di test. Il sistema verifica che vengano selezionati solo i test automatizzati (tutti i test manuali vengono ignorati), convalida la fase per assicurarsi che l'attività test di Visual Studio sia presente e disponga di impostazioni valide, controlla l'autorizzazione dell'utente per creare una versione per la pipeline di versione selezionata, crea un'esecuzione di test e quindi attiva la creazione di una versione alla fase selezionata.

    Screenshot che mostra l'avvio dell'esecuzione del test.

  4. Selezionare Visualizza esecuzione test per visualizzare lo stato di avanzamento del test e analizzare i test non superati. I risultati dei test contengono le informazioni pertinenti per il debug di test non riusciti, ad esempio il messaggio di errore, l'analisi dello stack, i log della console e gli allegati.

  5. Al termine dell'esecuzione del test, nella pagina Esecuzioni dei piani di test di Azure vengono visualizzati i risultati del test. La pagina Riepilogo esecuzione mostra una panoramica dell'esecuzione.

    Screenshot che mostra il riepilogo dell'esecuzione del test.

    È disponibile un collegamento alla versione usata per eseguire i test, che semplifica la ricerca della versione che ha eseguito i test se è necessario tornare in un secondo momento e analizzare i risultati. Usare anche questo collegamento se si vuole aprire la versione per visualizzare i log di rilascio.

Nota

L'allegato manuale dei file non è supportato per i risultati dei test automatizzati.

Quali sono gli scenari di errore tipici o i problemi da esaminare se i test non vengono eseguiti?

  1. Nella pagina Risultati test sono elencati i risultati di ogni test nell'esecuzione del test. Selezionare un test per visualizzare le informazioni di debug per i test non riusciti, ad esempio il messaggio di errore, l'analisi dello stack, i log della console e gli allegati.

    Screenshot che mostra la visualizzazione dei dettagli dei risultati del test.

  2. Aprire la pagina Piani di test e selezionare il piano di test per visualizzare lo stato dei test se i test vengono aggiornati al termine dell'esecuzione del test. Selezionare un test per visualizzare i risultati dei test recenti.

    Screenshot che mostra la visualizzazione del piano di test.

Domande frequenti

Vedere le domande frequenti seguenti sui piani di test di Azure.

D: Quali autorizzazioni è necessario eseguire test automatizzati da Piani di test di Azure?

R: È necessario essere un collaboratore del progetto o disporre delle autorizzazioni seguenti:

  • Creare versioni
  • Gestire le versioni
  • Modificare la fase di rilascio
  • Gestire la distribuzione

Per altre informazioni, vedere Autorizzazioni di rilascio.

D: È possibile eseguire l'override della compilazione o della fase impostata a livello di piano di test per un'istanza specifica dell'esecuzione del test?

R: Sì, è possibile eseguire questa operazione usando il comando Esegui con le opzioni . Aprire il menu di scelta rapida per il gruppo di test nella colonna a sinistra e selezionare Esegui con le opzioni.

Screenshot che mostra la configurazione della finestra di dialogo Esegui con opzioni.

Immettere i valori seguenti nella finestra di dialogo Esegui con opzioni e quindi selezionare OK:

  • Tipo di test e runner: selezionare Test automatizzati usando la fase di rilascio.
  • Compilazione: selezionare la compilazione con i file binari di test. I risultati del test sono associati a questa compilazione.
  • Pipeline di versione: selezionare una pipeline dall'elenco delle pipeline di versione che possono usare l'artefatto di compilazione selezionato.
  • Fase di rilascio: selezionare il nome della fase configurata nella pipeline di versione.

Screenshot che mostra la finestra di dialogo Esegui con opzioni configurata.

D: Perché usare le fasi di rilascio per eseguire i test?

R: Azure Pipelines offre un flusso di lavoro di orchestrazione accattivante per ottenere file binari di test come artefatti ed eseguire test. Questo flusso di lavoro condivide gli stessi concetti usati nel flusso di lavoro di test pianificato, ovvero gli utenti che eseguono test nel flusso di lavoro pianificato trovano facile adattarsi; ad esempio clonando una pipeline di versione di test pianificata esistente.

Un altro vantaggio importante è la disponibilità di un set completo di attività nel catalogo attività che consentono di eseguire una serie di attività prima e dopo l'esecuzione dei test. Gli esempi includono la preparazione e la pulizia dei dati di test, la creazione e la pulizia dei file di configurazione e altro ancora.

D: Come funziona la selezione di "Esecuzione test" nell'attività test di Visual Studio versione 2?

R: Il sottosistema di gestione test usa l'oggetto esecuzione test per superare l'elenco dei test selezionati per l'esecuzione. L'attività di test cerca l'identificatore di esecuzione del test, estrae le informazioni sull'esecuzione del test, ad esempio i nomi dei contenitori e dei metodi di test, esegue i test, aggiorna i risultati dell'esecuzione del test e imposta i punti di test associati ai risultati del test nell'esecuzione del test. Dal punto di vista del controllo, l'attività di Visual Studio fornisce una traccia dalle versioni cronologiche e dagli identificatori di esecuzione dei test ai test inviati per l'esecuzione di test su richiesta.

D: L'agente deve essere eseguito in modalità interattiva o come servizio?

R: Se si eseguono test dell'interfaccia utente come test codificati dell'interfaccia utente o Selenium , l'agente nei computer di test deve essere in esecuzione in modalità interattiva con l'accesso automatico abilitato, non come servizio, per consentire all'agente di avviare un Web browser. Se si usa un browser headless, ad esempio PhantomJS, l'agente può essere eseguito come servizio o in modalità interattiva. Per altre informazioni, vedere Creare e rilasciare agenti, Distribuire un agente in Windows e pool di agenti.

D: Dove è possibile trovare la documentazione dettagliata su come eseguire i test Selenium?

R: Vedere Introduzione ai test di Selenium.

D: Cosa accade se si selezionano più configurazioni per lo stesso test?

R: Attualmente il flusso di lavoro su richiesta non è compatibile con la configurazione.

D: Cosa accade se è necessario scaricare i file binari del prodotto e testare i file binari da compilazioni diverse? Oppure se è necessario ottenere elementi da un'origine, ad esempio Jenkins?

R: La funzionalità corrente è ottimizzata per una singola compilazione del team da testare su richiesta usando un flusso di lavoro di Azure Pipelines. Viene valutato il supporto per le versioni multifatti, inclusi gli artefatti non Azure Pipelines, ad esempio Jenkins, in base al feedback degli utenti.

D: Ho già una pipeline di versione di test pianificata. È possibile riutilizzare la stessa pipeline per eseguire test su richiesta o creare una nuova pipeline?

R: È consigliabile usare una pipeline di versione separata e una fase per i test automatizzati su richiesta da Piani di test di Azure perché:

  • Potrebbe non essere necessario distribuire l'app ogni volta che si vogliono eseguire alcuni test su richiesta. Le fasi di test pianificate vengono in genere configurate per distribuire il prodotto e quindi eseguire test.

  • Le nuove versioni vengono attivate per ogni esecuzione su richiesta. Se sono presenti molti tester che eseguono alcune esecuzioni di test su richiesta ogni giorno, la pipeline di versione di test pianificata potrebbe essere sovraccaricata con le versioni per queste esecuzioni, rendendo difficile trovare versioni che attivano il trigger per la pipeline che contiene test pianificati e distribuzione nell'ambiente di produzione.

  • È possibile configurare l'attività Test di Visual Studio con un identificatore di esecuzione test come input in modo da poter tracciare il risultato attivato dalla versione. Per altre informazioni, vedere Come viene selezionata l'opzione "Esecuzione test (per le esecuzioni su richiesta)" nell'attività Test di Visual Studio?.

D: È possibile attivare queste esecuzioni e visualizzare i risultati in Microsoft Test Manager?

R: No. Microsoft Test Manager non supporta l'esecuzione di test automatizzati nelle build di Team Foundation. Funziona solo nell'interfaccia basata sul Web per Azure Pipelines. Tutti i nuovi investimenti per lo sviluppo di prodotti di test manuali e automatizzati sono nell'interfaccia basata sul Web. Non è previsto alcun ulteriore sviluppo per Microsoft Test Manager. Vedere Indicazioni sull'utilizzo di Microsoft Test Manager.

D: Ho più tester nel mio team. Possono eseguire test da gruppi di test o piani di test diversi in parallelo usando la stessa pipeline di versione?

R: Possono usare la stessa pipeline di versione per attivare più esecuzioni di test in parallelo se:

  • Il pool di agenti associato alla fase dispone di agenti sufficienti per soddisfare le richieste parallele. Se non sono disponibili agenti sufficienti, le esecuzioni possono comunque essere attivate, ma rilascia la coda per l'elaborazione fino a quando gli agenti non diventano disponibili.

  • Sono disponibili processi sufficienti per abilitare processi paralleli. Per altre informazioni, vedere Processi paralleli in Azure Pipelines o Processi paralleli in TFS.

  • I tester non eseguono gli stessi test in parallelo. In questo modo è possibile che i risultati vengano sovrascritti a seconda dell'ordine di esecuzione.

Per abilitare l'esecuzione in parallelo di più esecuzioni di test diverse, impostare l'opzione trigger fase di Azure Pipelines per il comportamento quando più versioni sono in attesa di essere distribuite come indicato di seguito:

  • Se l'applicazione supporta i test in esecuzione in parallelo da origini diverse, impostare questa opzione su Consenti la distribuzione di più versioni contemporaneamente.

  • Se l'applicazione non supporta i test in esecuzione in parallelo da origini diverse, impostare questa opzione su Consenti una sola distribuzione attiva alla volta.

D: Ricerca per categorie passare parametri al codice di test da una pipeline di compilazione o versione?

R: Usare un file runsettings per passare i valori come parametri al codice di test. Ad esempio, in una versione che contiene diverse fasi, è possibile passare l'URL dell'app appropriato a ogni attività di test in ognuna di esse. Il file runsettings e i parametri corrispondenti devono essere specificati nell'attività Test di Visual Studio.

Screenshot che mostra il passaggio di parametri per testare il codice da una pipeline di compilazione o versione.

D: Quali sono gli scenari di errore o i problemi tipici da esaminare se i test non vengono eseguiti?

R: Controllare e risolvere i problemi come segue:

  • La pipeline di versione e la fase in cui si vogliono eseguire i test non vengono visualizzati dopo aver selezionato la compilazione.

    • Assicurarsi che la pipeline di compilazione che genera la compilazione sia collegata come artefatto primario nella scheda Artefatti della pipeline di versione.

  • Viene visualizzato un errore che indica che non si dispone di autorizzazioni sufficienti per attivare una versione.

    • Configurare le autorizzazioni Crea versioni e Gestisci distribuzioni per l'utente nel menu Sicurezza della pipeline di versione. Vedere Autorizzazioni di rilascio.

  • Viene visualizzato un errore che indica che non sono stati trovati test automatizzati.

    • Controllare lo stato di automazione dei test selezionati. Eseguire questa operazione nell'elemento di lavoro per il test case o usare il collegamento Opzioni colonna in Piani di test di Azure per aggiungere la colonna Stato automazione all'elenco dei test. Per altre informazioni, vedere la sezione prerequisiti.
  • I test non sono stati eseguiti e si sospetta che la pipeline di versione non sia corretta.

    • Usare il collegamento nella pagina Riepilogo esecuzione per accedere all'istanza di versione usata per eseguire i test e visualizzare i log di rilascio.

  • I test passano allo stato di errore o rimangono "in corso" anche dopo il rilascio nella fase.

    • Controllare se nella fase di rilascio selezionata è selezionata l'attività e la versione corrette. È necessario usare la versione 2 o successiva dell'attività Test di Visual Studio. La versione 1 dell'attività e l'attività Esegui test funzionali non sono supportate.