Procedura: Eseguire il debug di oggetti di database
Uno unit test di SQL Server è costituito dagli elementi seguenti:
Codice dello unit test scritto in Visual C# o Visual Basic.Questo codice, generato dalla finestra di progettazione unit test di SQL Server, è responsabile dell'invio dello script Transact-SQL che forma il corpo del test.
Una o più condizioni di test, scritte in Visual C# o Visual Basic.Per eseguire il debug delle condizioni di test, attenersi alla procedura per eseguire il debug di uno unit test come descritto in Procedura: eseguire il debug durante l'esecuzione di un test (Visual Studio 2010) o Procedura: eseguire il debug durante l'esecuzione di un test (Visual Studio 2012).
Uno o più script Transact-SQL eseguiti sugli oggetti nel database sottoposto a test.Non è possibile eseguire il debug di questi script Transact-SQL.
Nelle procedure descritte in questo argomento viene descritto come eseguire il debug di oggetti di database specifici, ad esempio stored procedure, funzioni e trigger, nel database sottoposto a test.Per eseguire il debug di un oggetto di database, attenersi alle procedure in questo ordine:
Abilitare il debug di SQL Server nel progetto di test.
Abilitare il debug dell'applicazione nell'istanza di SQL Server che ospita il database sottoposto a test.
Impostare i punti di interruzione nello script Transact-SQL degli oggetti di database di cui viene eseguito il debug.
Eseguire il debug dello unit test.In questa procedura il test viene eseguito in modalità di debug.
Per abilitare il debug di SQL Server nel progetto di test
Aprire Esplora soluzioni.
In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto di test e scegliere Proprietà.
Verrà visualizzata una pagina delle proprietà con lo stesso nome del progetto di test.
Nella pagina delle proprietà fare clic su Debug.
In Attiva debugger fare clic su Attiva debug SQL Server.
Salvare le modifiche.
Per impostare un timeout del contesto di esecuzione maggiore per abilitare il debug del progetto di test
Scegliere Apri dal menu File, quindi fare clic su File.
Passare alla cartella contenente il progetto di test e fare doppio clic sul file app.config.
Il file app.config verrà aperto nell'editor.
Modificare il nodo ExecutionContext per aggiungere un timeout del comando, come nel seguente esempio:
<ExecutionContext CommandTimeout ="300" Provider="System.Data.SqlClient" ConnectionString="Data Source=TargetServerName\TargetInstanceName;Initial Catalog=TargetDatabaseName;Integrated Security=True;Pooling=False" />
Salvare le modifiche.
Ricompilare il progetto di unit test.
![]() |
---|
Se non si ricompila il progetto, le modifiche apportate al file app.config non verranno applicate quando si eseguono gli unit test e il debug avrà esito negativo. |
Per aggiungere punti di interruzione allo script Transact-SQL
Aprire Esplora oggetti di SQL Server dal menu Visualizza.
In Connessioni dati espandere il nodo del database che si desidera testare.
Se accanto all'icona del database viene visualizzata una piccola "x" rossa, la connessione al database viene chiusa.In tal caso, fare clic con il pulsante destro del mouse sul database e scegliere Aggiorna.Potrebbe essere necessario specificare le credenziali per aprire la connessione al database.
Espandere il nodo Visualizzazioni, Stored procedure o Funzioni per trovare l'oggetto di cui si desidera eseguire il debug.
Fare doppio clic sull'oggetto di cui si desidera eseguire il debug.
Per impostare un punto di interruzione, fare clic sulla barra laterale grigia.
Per eseguire il debug dello unit test di SQL Server
In Visual Studio 2010 aprire la finestra Visualizzazione test (Test -> Finestre).In Visual Studio 2012 aprire la finestra Esplora test.
Fare clic con il pulsante destro del mouse sul test tramite il cui script Transact-SQL è possibile verificare il comportamento dell'oggetto di database in cui sono impostati i punti di interruzione e selezionare Esegui debug selezione.
Il test viene eseguito in modalità di debug finché non viene rilevato un punto di interruzione nell'oggetto di database.
(Facoltativo) Per aprire un'altra finestra di debug, scegliere Finestre dal menu Debug, quindi fare clic su Punti di interruzione, Output o Controllo immediato.
Vedere anche
Esecuzione di unit test di SQL Server
Debug di Transact-SQL (Visual Studio 2010)