2016-09-28 4 views
0

私はifのステートメントを直接テストしたいと思っています。私の問題は、codeに私のifステートメントをテストするために何度も待っています。これは私のcodeです:C#ビジュアルスタジオでイミディエイトウィンドウを使用してステートメントをテストすることは可能ですか?

byte isFive = _checkReadLengthIsFive; 

    if (readLength == 5) 
    { 
     isFive++; 
     _checkReadLengthIsFive = isFive; 
     if (isFive == 2) 
     { 
      string appendText = "WRITE FAIL" + Environment.NewLine; 
      File.AppendAllText(Fullpath, appendText); 
      DisplayData(MessageType.Incoming, "DAPAT!" + "\n"); 
     } 
    } 

readLength = 5はほとんど起こっていないので、私はそう長く待って、このif声明の中で到達します。即時ウィンドウを使用することは可能ですか?可能であればどのように教えてください?助けと応えてくれてありがとう。

+0

ブレークポイントを使用しましたか? – active92

+1

ショートアノテーション:いいえ、即時ウィンドウは変数なしでコードを実行するのに役立ちます(5 == 6)。詳細については、この記事(http://stackoverflow.com/a/1361136/1050927)を参照してください。 – Prisoner

+0

ユニットテストはこれに便利です。エッジケースをテストできるようにテストをセットアップできます –

答えて

0

あなたはif文の内部コードをテストしたい場合は(readLength == 5)

場合(真)場合、単に

からコードを変更

すべてがOKであれば、 readLength == 5)

+0

即時ウィンドウの変更またはどこですか? – yosafat

+0

私はすぐにウィンドウを使用する必要はないと思います。 if文が起きるまでに長い時間待たなければならないと言いますが、私の考えは、if文を実行するコードを変更しないで、if文の中のコードをテストすることです。 –

+0

ああ、私たちがコードをテストする場合は、if(true) – yosafat

1

はいコードが実行されている間(デバッグ)、変数の値を直接ウィンドウで変更できます。ウィンドウを使用し、readLength = 5;と入力することで、変数の値を設定できるはずです。変数の上にマウスを置いて、値をクリックして新しい値を入力することもできます。

+0

直接のウィンドウに何を入力する必要がありますか?私は空白を参照してください – yosafat

+0

ウォッチウィンドウも。 –

+0

ところで、即時ウィンドウと監視ウィンドウは、プログラムがブレークポイントに達したときにのみ有効です。 if(readLength == 5)、そのブレークポイントがヒットした場合は 'readLength = 6'という直前のウィンドウにブレークポイントを挿入します。ここでは、あなたが始めるために、直接ウィンドウ上の簡潔で便利なチュートリアルです:http://www.blackwasp.co.uk/VSImmediateaspx –

関連する問題