Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
È possibile usare Team Foundation Build per eseguire gli unit test di SQL Server come parte di un test di verifica della compilazione (BVT). È possibile configurare gli unit test per distribuire il database, generare dati di test e quindi eseguire i test selezionati. Se non si ha familiarità con Team Foundation Build, è consigliabile esaminare le informazioni riportate di seguito prima di applicare le procedure descritte in questo argomento:
Prima di utilizzare queste procedure, è necessario innanzitutto configurare l'ambiente di lavoro effettuando le attività seguenti:
Installare Team Foundation Build e il controllo della versione di Team Foundation. Probabilmente si dovrà installare Team Foundation Build e il controllo della versione di Team Foundation su due computer differenti.
Installare le utilità di compilazione MicrosoftSQL Server Data Tools sullo stesso computer in cui è installato Team Foundation Build. Per installare SQL Server Data Tools Build Utilities, per prima cosa occorre creare un punto di installazione amministrativa. Per altre informazioni sul punto di installazione amministrativa, vedere Installare SQL Server Data Tools. Quindi installare SSDTBuildUtilities.msi sul server di build dal percorso (/percorso) utilizzato per il punto di installazione amministrativo.
Connettersi a un'istanza di Visual Studio Team Foundation Server.
Dopo aver configurato l'ambiente di lavoro, è quindi necessario seguire questi passaggi:
Creare un progetto di database.
Importare o creare lo schema e gli oggetti del progetto di database.
Configurare le proprietà del progetto di database per la compilazione e la distribuzione.
Creare uno o più test unitari.
Aggiungere la soluzione contenente il progetto di database e il progetto di unit test al controllo delle versioni e archiviare tutti i file.
Nelle procedure disponibili in questo argomento viene descritto come creare una definizione di compilazione per eseguire gli unit test come parte di un'esecuzione automatica di test:
Esecuzione di unit test di SQL Server in un computer di compilazione
Quando si eseguono unit test in un computer di compilazione, potrebbe non essere possibile trovare i file di progetto del database (con estensione sqlproj). Questo problema si verifica perché il file app.config fa riferimento ai file in questione utilizzando percorsi relativi. Inoltre, l'esito degli unit test potrebbe essere negativo se non viene trovata l'istanza di SQL Server da usare per l'esecuzione di unit test. Questo problema può verificarsi se le stringhe di connessione archiviate nel file app.config non sono valide dal computer di compilazione.
Per risolvere questi problemi, è necessario specificare una sezione di override nel file app.config tramite cui viene eseguito l'override di app.config con un file di configurazione specifico dell'ambiente Team Foundation Build. Per altre informazioni, vedere Modificare il progetto di test più avanti in questo argomento.
Configurare le impostazioni di test per l'esecuzione di unit test di SQL Server in un agente di compilazione x64
Prima di poter eseguire gli unit test in un agente di compilazione x64, è necessario configurare le impostazioni di test per modificare la piattaforma processi host.
Per specificare la piattaforma del processo host
Aprire la soluzione contenente il progetto di test per cui si desidera configurare le impostazioni.
Nella cartella Elementi di soluzione di Esplora soluzioni fare doppio clic sul file Local.testsettings.
Verrà visualizzata la finestra di dialogo Impostazioni test.
Nell'elenco scegliere Host.
In Piattaforma processi host all'interno del riquadro dei dettagli fare clic su MSIL per configurare i test da eseguire in un agente di compilazione x64.
Fare clic su Applica.
Assegnare test a una categoria di test (facoltativo)
In genere, quando si crea una definizione di compilazione per eseguire unit test, si specificano una o più categorie di test. Tutti i test nelle categorie specificate vengono eseguiti quando viene eseguita la compilazione.
Per assegnare test a una categoria di test
Aprire la finestra Visualizzazione test.
Selezionare un test.
Nel riquadro delle proprietà fare clic su Categorie di test, quindi sui puntini di sospensione (...) nella colonna più a destra.
Nella casella Aggiungi nuova categoria della finestra Categoria test digitare un nome per la nuova categoria di test.
Fare clic su Aggiungi e quindi fare clic su OK.
La nuova categoria di test verrà assegnata al test e sarà disponibile per gli altri test tramite le relative proprietà.
Modificare il progetto di test
Per impostazione predefinita, in Team Foundation Build viene creato un file di configurazione dal file app.config del progetto quando si compila il progetto di unit test. Il percorso del progetto del database viene archiviato come percorso relativo nel file app.config. I percorsi relativi utilizzabili in Visual Studio non potranno essere usati perché in Team Foundation Build i file compilati vengono inseriti in percorsi diversi in relazione alla posizione di esecuzione degli unit test. Inoltre, nel file app.config sono incluse le stringhe di connessione tramite cui viene specificato il database da testare. È inoltre necessario un file app.config separato per Team Foundation Build se gli unit test devono essere connessi a un database diverso da quello utilizzato durante la creazione del progetto di test. Apportando le modifiche indicate nella procedura successiva, è possibile impostare il progetto di test e il server di compilazione affinché in Team Foundation Build venga utilizzata una configurazione diversa.
Importante
È necessario eseguire questa procedura per ogni progetto di test (con estensione vbproj o vsproj).
Per specificare un file app.config per Team Foundation Build
Fare clic con il pulsante destro del mouse sul file app.config in Esplora soluzioni e scegliere Copia.
Fare clic con il pulsante destro del mouse sul progetto di test e scegliere Incolla.
Fare clic con il pulsante destro del mouse sul file denominato Copia di app.config e scegliere Rinomina.
Digitare BuildComputer.sqlunitttest.config e premere INVIO, dove BuildComputer è il nome del computer in cui viene eseguito l'agente di compilazione.
Fare doppio clic su BuildComputer.sqlunitttest.config.
Il file di configurazione verrà aperto nell'editor.
Impostare il percorso relativo dei file con estensione sqlproj aggiungendo un livello di cartella per la cartella delle origini e una sottocartella con lo stesso nome della soluzione. Ad esempio, se nel file di configurazione è inclusa inizialmente la voce seguente:
<DatabaseDeployment DatabaseProjectFileName="..\..\..\Database3\Database3.sqlproj" Configuration="Debug" />
Aggiornare il file come segue:
<DatabaseDeployment DatabaseProjectFileName="..\..\..\Database3\Database3.sqlproj" Configuration="Debug" />
Al termine, il file BuildComputer.sqlunitttest.config deve risultare analogo all'esempio seguente per Visual Studio 2010:
<SqlUnitTesting_VS2010> <DatabaseDeployment DatabaseProjectFileName="..\..\..\Database4\Database4.sqlproj" Configuration="Debug" /> <DataGeneration ClearDatabase="true" /> <ExecutionContext Provider="System.Data.SqlClient" ConnectionString="Data Source=(localdb)\Projects;Initial Catalog=Database4;Integrated Security=True;Pooling=False" CommandTimeout="30" /> <PrivilegedContext Provider="System.Data.SqlClient" ConnectionString="Data Source=(localdb)\Projects;Initial Catalog=Database4;Integrated Security=True;Pooling=False" CommandTimeout="30" /> </SqlUnitTesting_VS2010>
Se invece si usa Visual Studio 2012:
<SqlUnitTesting_VS2012> <DatabaseDeployment DatabaseProjectFileName="..\..\..\Database4\Database4.sqlproj" Configuration="Debug" /> <DataGeneration ClearDatabase="true" /> <ExecutionContext Provider="System.Data.SqlClient" ConnectionString="Data Source=(localdb)\Projects;Initial Catalog=Database4;Integrated Security=True;Pooling=False" CommandTimeout="30" /> <PrivilegedContext Provider="System.Data.SqlClient" ConnectionString="Data Source=(localdb)\Projects;Initial Catalog=Database4;Integrated Security=True;Pooling=False" CommandTimeout="30" /> </SqlUnitTesting_VS2012>
Aggiornare l'attributo ConnectionString per ExecutionContext e PrivilegedContext per specificare le connessioni al database di destinazione in cui si desidera eseguire la distribuzione.
Scegliere Save All (Salva tutti) dal menu File.
In Esplora soluzioni fare doppio clic sul file app.config.
Nell'editor, per ciascun nodo <SqlUnitTesting_VSVersion>, aggiungere
AllowConfigurationOverride="true"
. Ad esempio:-- Update SqlUnitTesting_VS2010 node to: <SqlUnitTesting_VS2010 AllowConfigurationOverride="true"> -- Update SqlUnitTesting_VS2012 node to: <SqlUnitTesting_VS2012 AllowConfigurationOverride="true">
Apportando questa modifica, si consente a Team Foundation Build di utilizzare il file di configurazione di sostituzione che è stato creato.
Scegliere Save All (Salva tutti) dal menu File.
Successivamente è necessario aggiornare Local.testsettings per includere il file di configurazione personalizzato.
Per personalizzare Local.testsettings per la distribuzione del file di configurazione personalizzato
In Esplora soluzioni fare doppio clic su Local.testsettings.
Verrà visualizzata la finestra di dialogo Impostazioni test.
Nell'elenco delle categorie scegliere Distribuzione.
Selezionare la casella di controllo Abilita distribuzione.
Fare clic su Aggiungi file.
Nella finestra di dialogo Aggiungi file di distribuzione specificare il file BuildComputer.sqlunitttest.config che è stato creato.
Fare clic su Applica.
Fare clic su Close.
Scegliere Save All (Salva tutti) dal menu File.
Successivamente, si registra la soluzione nel controllo della versione.
Controlla nel sistema la soluzione
In questa procedura, si caricano tutti i file della soluzione. In questi file è incluso il file di metadati di test della soluzione, contenente le associazioni delle categorie di test e i test. Ogni volta che si aggiunge, elimina, riorganizza o modifica il contenuto dei test, il file di metadati di test viene aggiornato automaticamente per riflettere queste modifiche.
Nota
In questa procedura vengono descritti i passaggi necessari se si utilizza il controllo della versione di Team Foundation. Se si utilizza un software per il controllo delle versioni differente, è necessario seguire i passaggi appropriati corrispondenti.
Per archiviare la soluzione
Connettersi a un computer in cui viene eseguito Team Foundation Server.
Per altre informazioni, vedere l'argomento relativo all'uso di Esplora controllo codice sorgente.
Se la tua soluzione non è già in controllo del codice sorgente, aggiungila.
Per altre informazioni, vedere l'argomento relativo all'aggiunta di un progetto o una soluzione al controllo della versione.
Fare clic su Visualizza, quindi fare clic su Archiviazioni in sospeso.
Archiviare tutti i file della soluzione.
Per altre informazioni, vedere Registrare modifiche in sospeso.
Nota
È possibile che le modalità di creazione e di gestione dei test automatici siano regolate da un processo di team specifico. Per il processo, ad esempio, si potrebbe richiedere di verificare localmente la compilazione prima di archiviare il codice in questione insieme ai relativi test che verranno eseguiti.
Accanto a ogni file in Esplora soluzioni viene visualizzata l'icona di un lucchetto per indicare che il file è archiviato. Per altre informazioni, vedere l'argomento relativo alla visualizzazione delle proprietà di file e cartelle del controllo della versione.
I test sono disponibili per Team Foundation Build. A questo punto è possibile creare una definizione di compilazione contenente i test che si desidera eseguire.
Creare una definizione di compilazione
Per creare una definizione di compilazione
In Team Explorer selezionare il progetto Team, fare clic con il pulsante destro del mouse sul nodo Compilazioni e scegliere Nuova definizione di compilazione.
Verrà visualizzata la finestra Nuova definizione di compilazione.
In Nome definizione di compilazione, digitare il nome che si desidera utilizzare per la definizione di compilazione.
Nella barra di navigazione fare clic su Predefiniti di Compilazione.
In Copia il risultato della compilazione nella seguente cartella di ricezione (percorso UNC, come \\server\share), specifica una cartella in cui contenere il risultato della compilazione.
È possibile specificare una cartella condivisa nel computer locale o in qualsiasi percorso di rete per il quale verranno concesse autorizzazioni al processo di compilazione.
Nella barra di navigazione fare clic su Processo.
Nel gruppo Obbligatorio di Elementi da compilare fare clic sul pulsante Sfoglia (...).
Nella finestra di dialogo dell'Editor dell'elenco dei progetti di compilazione, fare clic su Aggiungi.
Specificare il file della soluzione (con estensione .sln) aggiunto al controllo delle versioni in precedenza in questa procedura dettagliata e scegliere OK.
La soluzione verrà visualizzata nell'elenco File di soluzione o progetto da compilare.
Fare clic su OK.
In Test automatizzati nel gruppo Base specificare i test da eseguire. Per impostazione predefinita, verranno eseguiti i test contenuti nei file denominati *test*.dll della soluzione.
Nel menu File scegliere SalvaNomeProgetto.
Hai creato una definizione di compilazione. Successivamente è possibile modificare il progetto di test.
Eseguire la nuova definizione di compilazione
Per eseguire il nuovo tipo di compilazione
In Team Explorer espandere il nodo del progetto Team, espandere il nodo Compilazioni, fare clic con il pulsante destro del mouse sulla definizione di compilazione che si desidera eseguire, quindi scegliere Accoda nuova compilazione.
Viene visualizzata la finestra di dialogo Accoda build {TeamProjectName} con un elenco di tutti i tipi di build esistenti.
Se necessario, nella Definizione di compilazione, fare clic sulla tua nuova definizione di compilazione.
Verificare che i valori nei campi Definizione di build, Agente di build e Cartella di rilascio per questa build siano corretti, quindi fare clic su Accoda.
Verrà visualizzata la scheda In coda di Build Explorer. Per altre informazioni, vedere Gestire e visualizzare le compilazioni completate (Visual Studio 2010) o Gestire le compilazioni in Build Explorer (Visual Studio 2012).
Vedi anche
Esecuzione di unit test di SQL Server
Creare una definizione di compilazione di base
Accodare una compilazione
Monitorare lo stato di una compilazione in esecuzione