Visual Studioのデバッグ&ツールの基本①

Visual Studioは大変優れたIDEですが、その中のデバッグツールも優れた機能が多々用意されています。
「ブレークポイントで止めて値を参照」するだけでもオブジェクト階層がポップアップ表示されたりと直感的なUIも優れていますが、更に便利な機能を知らずに開発を行っている人も見かけるので「直ぐに理解できて直ぐ使えるもの」を中心に纏めておきます。

各ウィンドウが表示されていない場合は、プログラムを開始し「デバッグ>ウィンドウ」メニューの中から選択します。

よく使う画面系

ウォッチウィンドウ

調べたい値を「名前」に入れることで「値」や「種類」が一覧表示されます。
「名前」に変数名を入力するか、コードウィンドウから調べたい値を選択してドラッグ&ドロップも可能です。
※ウォッチウィンドウは4つまで表示させることができます。

イミディエイト ウィンドウ

調べたい値を入力してEnterすることで、その値が事業以降に表示されます。
※VB.NETでは、一文字目に「?」が必要です。

sqlを格納した文字列変数やデータなどの長い文字列などは、ウォッチよりも可読性がよいです。また、ウォッチと並べて使えば、 オブジェクトの調査等は行いやすいと思います。

また「Ctrl」+「F」で検索も可能です。

ローカル変数 ウィンドウ

ウォッチウィンドウと似ていますが、ステップ実行中メソッドのローカル変数が一覧で表示されます。操作は、ウォッチウィンドウと同様です。

呼び出し履歴

ファンクションにステップインした場合は、ここに呼び出し元がスタックされていきます。ダブルクリックすると「呼び出し元」のステップへジャンプできます。

よく使う操作系

処理のリピート

ブレークポイントやステップで停止したレッドマークを上部にドラッグ&ドロップすると処理を戻すことができます。
ステップを戻して「処理の変更を行い再度実行」したりとサイクルチェックが行えます。
※一度セットされた変数値は戻りません。

処理のスキップ

ステップラインのレッドマークを下部にドラッグ&ドロップすると処理をスキップさせることができます。
間の処理が「調べたいものと無関係」の場合などは処理を飛ばしたり、バグの原因を切り分けたいなどに利用できます。

ブレークポイント停止条件

ブレークポイントを「右クリック」すると「条件」メニューが選択できます。

「停止する条件式や条件」を入力します。ループ処理で何処かのカウントや条件でステップ停止させたい場合に有効です。

アクションを設定すると「出力ウィンドウ」に検査したい値が出力できます。
これを利用するとデバッグ出力
System.Diagnostics.Debug.WriteLine(salesDate);
を使用することなくソースにゴミを残さず且つ容易に出力検査が行えます。
「$」オプションで「$FUNCTION」などを入れるとファンクション名なども出力可能です。

Visual Studioのデバッグ&ツールの基本② >>

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

5 × 2 =