eclipseを使ったデバッグ方法まとめ
ちょっと名古屋に行ってたので勉強してませんでした
観光ついでにオクトーバーフェストで呑んだくれてました。
こういう無茶ができるのも今ぐらいかなぁ、とか。へろへろです。
で
今日からセルフ勉強会再開…です。
eclipseを使ったデバッグ方法
単体試験は主にデバッガを使って値を変更しながら実施します。
意外と面倒。
とりあえず、ブレークポイント置いて、デバッガモードで起動して…
ブレークポイントで処理を止めることができたらファンクションキーで操作をする。
F5 -- 次の処理へ
F6 -- 1行下へ
F7 -- メソッドの呼び出し元へ
は基本として。
F8 -- 次のブレークポイントへ
フレームにドロップボタン -- 現在のスタックフレームに再突入する。
平たくいえば現在実行されているメソッドの先頭に戻る。
ローカル変数はクリアされるけれども、グローバル変数はクリアされない。
つまり、以下のような場合、エラーになる。
BufferedReader br; try{ br = new BufferedReader(new InputStreamReader(req.getInputStream(), "UTF-8")); String str; StringBuilder sb = new StringBuilder(); while((str = br.readLine()) != null){ sb.append(str); } }catch(IOException e){ e.printStackTrace(); }finally{ if(br != null){ br.close(); //この処理を終えた上で、フレームにドロップで再突入する } }
req.getInputStream() … ローカル変数ではない …がもう読めない状態になっているので、
IOExceptionが発生する。
逆に言うと、これを使えば単体試験で例外を簡単に発生させられる。
監視式と表示ビュー
次回の話のタネに。実はよくわかっていない部分なので勉強します。