日々精進

新しく学んだことを書き留めていきます

Microsoft Visual Studio2005によるWebアプリケーションテスト技法1

オススメ度★★★★★
相変わらず赤間さんの本は読みやすい。
Microsoft Pressの本は分厚くて難解というイメージがあったがそれを覆すわかりやすさだ。
この本はVisual Studio2005とASP.NETを使ってテスト技法を解説しているが
テストのゴール、単体テスト結合テストの役割分担、自動化すべきテスト・すべきでないテストなど
他の技術を使っている場合でも役に立つ情報が随所にある。
こういったコンセプトから実際の単体テストコードの実装方法までをカバーしているところがこの本の偉いところ。
テスト関係の本で読みやすい本ってあまりないと思うので特におすすめ。
自分はソフトウェアテスト技法ソフトウェア・テストの技法 第2版を読もうとして挫折したもので。。
いいテストの本あったら教えてください。


以下まとめ。
○よいテストケースを考えることは難しい(例:マイヤーズの三角形
○ソフトウェアの品質保証には以下の要素が必要
・体系的テストケース
・統計的な品質の定量評価
・適切な箇所の自動化による効率化
○自動テストは一度テストを実行するだけなら手動でテストする場合の数倍〜数十倍の工数がかかるため必ずしも自動化すれば工数が削減されるわけではない。自動化の効果が出やすい部分を選んで自動化すべき
○よいテストケースとは以下のようなもの
・なるべく少ないケースで
・なるべく多くのバグを検出する
○厳密な単体テストは一つのクラスに対してのみテストを行う。つまり、他のクラスへの呼び出しはすべてスタブかモックに置き換える。実際にはそこまでやると手間がかかりすぎるのでDBから順にボトムアップでテストを行っていき、テスト済のクラスはテスト対象のクラスから呼んでよいということにする。
単体テストでは自分が書いたコード以外(フレームワーク、OS、自動生成されたコードなど)はテストしない。それらは正しく動作するものと仮定する。これらのバグは結合テストで検出する。