2017-12-01 16 views
0

ステートメントでAssertionErrorがプログラムを停止させる理由は、コードに関する前提が正しくないためです。問題は、assert文がJavaプロセスを強制終了するときにデバッグツールを使用して自分のコードをどのようにデバッグするのですか?assertステートメントでのデバッグ

EDIT:おそらく重複した質問に対する回答が私の回答ではないため、私の質問は異なります。

+0

ほとんどのIDEは、あなたがアサートする前にブレークポイントを置く – Blorgbeard

+0

..例外がスローされたとき、あなたが破損することができます。 – tsolakp

+0

@Blorgbeardしかし、その場合は、例外が発生する可能性があります。なぜassertを使うのですか?単に古い例外を投げないのはなぜですか? – Ogen

答えて

-1

EDIT: 例外をスローして同時に例外をスローしない方法を探している場合、これに対する解決策はありません。

ことができます現代のIDEで

、デバッグ時に:

  1. などコメントアウトとしてブロックされたテスト中の任意のブレークポイント
  2. 変更方法のコードを、設定せずに任意のAssertionErrorが上でブロックするようにIDEに伝えますアサート
  3. また主張再びHow to step back in Eclipse debugger?

をメソッドの実行を再開するためにIDEを伝えるには、デバッグの目的のために無効にすることができます。これがifブロックの代わりにアサーションを使用する理由の1つです。

参照: How do I disable Java assertions for a junit test in the code

関連する問題