Instrukcje: debugowanie obiektów bazy danych

Test jednostkowy programu SQL Server składa się z następujących funkcji:

  • Kod testu jednostkowego napisany w języku C# lub Visual Basic. Ten kod, który jest generowany przez projektanta testów jednostkowych programu SQL Server, jest odpowiedzialny za przesłanie skryptu Transact-SQL tworzącego treść testu.

  • Co najmniej jeden warunek testu napisany w języku C# lub Visual Basic. pl-PL: Aby debugować warunki testowania, wykonaj procedurę debugowania testu jednostkowego zgodnie z opisem w artykule Jak debugować podczas uruchamiania testu (Visual Studio 2010) lub Jak debugować podczas uruchamiania testu (Visual Studio 2012).

  • Co najmniej jeden skrypt Transact-SQL uruchamiany na obiektach w testowej bazie danych. Nie można debugować tych skryptów Transact-SQL.

Procedury opisane w tym artykule opisują sposób debugowania określonych obiektów bazy danych, takich jak procedury składowane, funkcje i wyzwalacze w testowej bazie danych. Aby debugować obiekt bazy danych, wykonaj następujące procedury w następującej kolejności:

  1. Włącz debugowanie programu SQL Server w projekcie testowym.
  2. Włącz debugowanie aplikacji w wystąpieniu SQL Server, które hostuje testowaną bazę danych.
  3. Ustaw punkty przerwania w skryscie Transact-SQL obiektów bazy danych, które debugujesz.
  4. Debuguj swój test jednostkowy. W tej procedurze uruchomisz test w trybie debugowania.

Włączanie debugowania SQL w projekcie testowym

  1. Otwórz eksploratora rozwiązań .

  2. W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt testowy i wybierz polecenie Właściwości.

    Zostanie otwarta strona właściwości o tej samej nazwie co projekt testowy.

  3. Na stronie właściwości wybierz pozycję Debuguj.

  4. W obszarze Włącz debugery wybierz pozycję Włącz debugowanie programu SQL Server.

  5. Zapisz zmiany.

Ustaw zwiększony limit czasu kontekstu wykonawczego, aby włączyć debugowanie projektu testowego

  1. W menu Plik wskaż polecenie Otwórz, a następnie wybierz pozycję Plik.

  2. Przejdź do folderu zawierającego projekt testowy, a następnie dwukrotnie kliknij plik app.config.

    Plik app.config zostanie otwarty w edytorze.

  3. Zmodyfikuj węzeł ExecutionContext, aby dodać limit czasu polecenia, jak w przykładzie poniżej:

    <ExecutionContext
        CommandTimeout ="300" Provider="System.Data.SqlClient"
        ConnectionString="Data Source=TargetServerName\TargetInstanceName;Initial Catalog=TargetDatabaseName;Integrated Security=True;Pooling=False" />
    
  4. Zapisz zmiany.

  5. Ponownie skompiluj projekt testu jednostkowego.

Ważny

Jeśli nie skompilujesz ponownie swojego projektu, zmiany, które wprowadziłeś w app.config nie zostaną zastosowane podczas uruchamiania testów jednostkowych, a debugowanie zakończy się niepowodzeniem.

Dodawanie punktów przerwania do skryptu Transact-SQL

  1. W menu Widok otwórz Eksplorator obiektów programu SQL Server.

  2. W obszarze Połączenia danychrozwiń węzeł bazy danych, którą chcesz przetestować.

  3. Jeśli obok ikony bazy danych pojawi się mały czerwony znak "x", połączenie z bazą danych zostanie zamknięte. W takim przypadku kliknij prawym przyciskiem myszy bazę danych, a następnie wybierz polecenie Odśwież. Może być konieczne podanie poświadczeń, aby otworzyć połączenie z bazą danych.

  4. Rozwiń węzeł Views, Stored Procedureslub Functions, aby znaleźć obiekt, który chcesz analizować w celu znalezienia błędów.

  5. Kliknij dwukrotnie obiekt, który chcesz debugować.

  6. Wybierz szary pasek boczny, aby ustawić punkt przerwania.

Debugowanie testu jednostkowego programu SQL Server

  1. W programie Visual Studio 2010 otwórz okno widoku testu (Test>Windows) Test View. W programie Visual Studio 2012 otwórz okno eksploratora testów.

  2. Kliknij prawym przyciskiem myszy test, którego skrypt Transact-SQL wykonuje działania na obiekcie bazy danych, w którym ustawiono punkty przerwania, i wybierz opcję Debuguj zaznaczenie.

    Test jest uruchamiany w trybie debugowania do momentu napotkania punktu przerwania w obiekcie bazy danych.

  3. (Opcjonalnie) Aby otworzyć inne okno debugowania, otwórz menu Debuguj , wskaż pozycję Windows, a następnie wybierz pozycję Punkty przerwania, Dane wyjściowe lub Natychmiastowe.