スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
ブログランキングに参加しています。応援クリックいただけると嬉しいです♪
FC2ブログランキング
人気ブログランキングへ

バグ発見!

うちのチームでは、プログラマーたちがコードを書いている途中でバグを見つけたら、彼ら自身でバグをバグトラッキングシステムに入力します。が、そのバグをなおしても、プログラマー自身がそのバグを「直りました。」とマークすることはできません。プログラマーたちが発見したバグが直っているかを確認するのもテスターの仕事です。

プログラマーたちが発見するバグは、大抵はロジックに関するバグがほとんどです。なので、そのバグがなおっているかを確認するのはうちのチームでは必然的にコードが理解でき、またコードにアクセスできるホワイトボックスエンジニアの仕事になります。私達が今開発しているのはウェブアプリケーションで、サーバー側のコードはJavaで書かれているので、私がこういうバグが直っているかを確認する時は、大抵JUnitを使ってユニットテストを書きます。

この作業をする時に私がまず最初にやることは、ユニットテストの中でテストしなければいけないメソッドをまず呼んでみます。この時点では、私はこのメソッドが何をするか全くわかっていないので、とりあえず呼んでみて、何が起こるかを見てみます。そこから先は、大体の場合がそのメソッドにブレイクポイントを置いて、デバッガを使って、コードを一行一行実行していく作業になります。

昨日はこの作業をしていて、テストしなければいけないメソッドを一行一行実行しながら読んでいたのですが、最初はこの初めて見るコードの中で何が起きてるかさっぱりわからなかったのに、何度も何度も実行するうちにだんだんわかってきて、しまいには関連コードの中にバグを発見してしまいました♪

久々にホワイトボックスらしいバグを見つけて、すごく嬉しくなりました。初めて見るコードにも関わらず、1時間もしないうちに何が起きているか完璧に把握でき、さらにバグを発見できて、我ながら単純だな~とは思いつつ、やはりバグを見つけるとテスターの血がさわぎます。

もっともっとコードを勉強して、プログラマーたちが見つけているようなバグを私が自分でどんどん見つけられるようになれればと思います。そして、最終的にはデザイン自体にバグや、改善できるところを見つけられるようになるのが目下の目標です。

でも、せっかくコードが見れるのだから、リスキーなエリアを特定し、脆弱性を見つけるためのペネトレーション(侵入)テストとかのプランも立ててみたいし、データフロー分析とかもやってみたい・・・・・。う~ん、ホワイトボックスエンジニアがやらなきゃいけないことはまだまだあります。とりあえず最優先事項は、やるべき作業の優先順位を決めることです。

ところで、オレゴンはそろそろいちごがおいしい季節になってきたみたいです。先日食料の買出しに行ったら、いちごが一パック$1.48と安くで売ってたので、買ってきました。
IMG_0477.jpg


ブログランキングに参加しています。応援クリックいただけると嬉しいです♪
FC2ブログランキング
人気ブログランキングへ

COMMENTS

COMMENT FORM

TRACKBACK


この記事にトラックバックする(FC2ブログユーザー)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。