次の方法で共有


方法 : ASP.NET ソリューションでのテスト中にデバッグする

ASP.NET Web プロジェクトのテストに使用している単体テストと Web テストのどちらも、デバッグできます。また、テストの実行中に ASP.NET の製品コードをデバッグできます。

ただし、ASP.NET コードをテストしている場合、テスト コードは、VSTestHost プロセスの制御下にある通常の方法では実行されません。この場合、IIS プロセスで実行されるか、または Web サイトがファイル ベースの場合、ASP.NET 開発サーバー プロセスで実行されます。テストの実行の一般的なテスト プロセスとは異なるため、選択、 単体テストのデバッグ 、テストの実行中に [テスト] メニューからオプションはデバッグされません。

同様に、デバッグが有効ではない場合、ASP.NET の製品コードはステップ インできません。また、デバッガーは ASP.NET 開発サーバーまたは IIS プロセスにアタッチされます。

次の各手順では、[新しい Web サイト] ダイアログ ボックスを使用して ASP.NET Web サイト プロジェクトを作成します。このダイアログ ボックスでは、[場所] ボックスで、Web サイトの場所を選択します。この選択により、後でデバッガーをアタッチするプロセスと、ASP.NET ソリューションでのテストの実行中にデバッグを行う手順が決まります。選択できるのは、IIS と ASP.NET 開発サーバーです。

  • IIS で実行中の場合のデバッグ

  • ASP.NET 開発サーバーで実行中の場合のデバッグ

IIS で実行中の場合のデバッグ

次の手順では、デバッガーをプロセスにアタッチします。プロセス名は、使用するオペレーティング システムによって異なります。これは、インストールされる IIS のバージョンがオペレーティング システムによって異なるからです。

IIS で ASP.NET テストを実行中にデバッグするには

  1. テスト対象の ASP.NET Web サービス プロジェクトと、それをテストする ASP.NET 単体テストを作成します。

    この Web サイト プロジェクトを作成する場合は、[新しい Web サイト] ダイアログ ボックスの [場所] で [HTTP] または [FTP] を選択します。これにより、ホスト プロセスは IIS になります。

  2. ASP.NET Web プロジェクトでデバッグを有効にします。これを行うには、プロジェクトの Web 構成ファイルを編集します。プロジェクトに Web.config ファイルが既に存在する場合は、手順 4. に進みます。いない場合は、ここで追加します。 ソリューションでは、Web サイト プロジェクトのショートカット メニューを開き、選択 [新しい項目の追加

    [新しい項目の追加] ダイアログ ボックスが表示されます。

  3. [新しい項目の追加 ダイアログ ボックスで、選択 Web 構成ファイル し [ 追加

    Web.config ファイルが Web サイト プロジェクトに追加されます。Web.config ファイルの使用方法の詳細については、「方法: .NET アプリケーションのデバッグを有効にする」を参照してください。

  4. Web.config ファイルで、<compilation debug="false"/> という行を <compilation debug="true"/> に変更します。

  5. (省略可能) ASP.NET 単体テストと、Web サイトの製品コードにブレークポイントを設定します。

  6. デバッガーを IIS プロセスにアタッチします。これを行うには、 デバッグ し [ [プロセスにアタッチ

    [プロセスにアタッチ] ダイアログ ボックスが表示されます。

  7. [選択可能なプロセス] の下で、デバッガーをアタッチするプロセス名を探します。

    必要なプロセスが表示されないときは、その他の実行中のプロセスも表示できます。これを行うには、[すべてのユーザーからのプロセスを表示する][すべてのセッションのプロセスを表示する] をオンにします。

  8. 選択可能なプロセス、プロセスの名前を選択し、選択 接続

    添付するのには、あるプロセスが実行されていない場合は、選択キャンセルし、プロセスを起動します。ソリューション エクスプ ローラーでこれを行うには、Web サイト プロジェクトのショートカット メニューを開き、選択ブラウザーで表示]。次に、選択デバッグ し [ [プロセスにアタッチもう 1 度。 プロセスを実行して開始され、下に表示されます選択可能なプロセス。プロセス名を選択し、[ 接続

  9. テストを開始します。

    これを行うには、単体テストのエクスプ ローラーで、次からデバッグするテストを選択、 テスト メニューの [を選択 単体テストのデバッグテストの選択

    [!メモ]

    テストを実行する場合は、[選択範囲のデバッグ] ではなく、[選択範囲の実行] を選択します。相違点は、[選択範囲のデバッグ] を選択すると、デバッガーはテストが完了すると自動的にデタッチされる一方、[選択範囲の実行] を選択すると、デバッガーはアタッチされたままになることです。デバッグ中にテストを何度も実行する必要があり、そのたびにプロセスをアタッチし直すのを回避したい場合には、[選択範囲の実行] が便利です。[選択範囲の実行] を選択した場合、デバッグが完了してプロセスをデタッチするには、[デバッグ] メニューの [デバッグの停止] をクリックするか、Shift キーを押しながら F5 キーを押します。

ASP.NET 開発サーバーで実行中の場合のデバッグ

テストを ASP.NET 開発サーバーで実行中にデバッグするには

  1. テスト対象の ASP.NET Web サービス プロジェクトと、それをテストする ASP.NET 単体テストを作成します。

    この Web サイト プロジェクトを作成する場合は、[新しい Web サイト] ダイアログ ボックスの [場所] で [ファイル システム] を選択します。これにより、ホスト プロセスは ASP.NET 開発サーバーになります。

  2. ASP.NET Web プロジェクトでデバッグを有効にします。これを行うには、プロジェクトの Web 構成ファイルを編集します。プロジェクトに Web.config ファイルが既に存在する場合は、手順 4. に進みます。いない場合は、ここで追加します。 ソリューションでは、Web サイト プロジェクトのショートカット メニューを開き、選択 [新しい項目の追加

    [新しい項目の追加] ダイアログ ボックスが表示されます。

  3. [新しい項目の追加 ダイアログ ボックスで、選択 Web 構成ファイル し [ 追加

    Web.config ファイルが Web サイト プロジェクトに追加されます。Web.config ファイルの使用方法の詳細については、「方法: .NET アプリケーションのデバッグを有効にする」を参照してください。

  4. Web.config ファイルで、<compilation debug="false"/> という行を <compilation debug="true"/> に変更します。

  5. System.Diagnostics.Debugger.Break() ステートメントを ASP.NET 単体テストの先頭に追加します。

    [!メモ]

    コードに設定したブレークポイントがヒットするのは、ブレークポイントがこの System.Diagnostics.Debugger.Break() ステートメントより後にある場合のみです。

    [!メモ]

    C++ では、このステートメントは System::Diagnostics::Debugger::Break() です。単体テストの Visual C++ での使用の詳細については、「Unit Tests and C++」を参照してください。

  6. ASP.NET 単体テストと、Web サイトの製品コードにブレークポイントを設定します。

  7. テストを開始します。

    これを行うには、単体テストのエクスプ ローラーで、次からデバッグするテストを選択、 テスト メニューの [を選択 単体テストのデバッグテストの選択

  8. テストの実行が開始されるとすぐに、ダイアログ ボックスが表示されます。このダイアログ ボックスには、プログラムでブレークポイントにヒットしたことが通知されます。

  9. 選択デバッグのインスタンスを選択Visual Studioが読み込まれているソリューションとしますはい

    Visual Studio により、実行が System.Diagnostics.Debugger.Break() ステートメントで一時停止した状態でプロセスにアタッチされます。[デバッグ] メニューの [続行] をクリックするか、F5 キーを押して、実行を次のブレークポイントまで続行させます。

    [!メモ]

    デバッグが完了したら、System.Diagnostics.Debugger.Break() ステートメントを削除してください。削除しないと、テストを実行するたびにブレークポイント ダイアログ ボックスが表示されます。

参照

処理手順

方法 : テストの実行中にデバッグする

その他の技術情報

方法: ASP のデバッグを有効にします。Net