経験ゼロでもできる プログラミング現場の単体テスト の商品レビュー
javaで開発する場合の単体テストの基本事項、開発環境、テストがしやすくなる設計の仕方など実践的な内容を幅広く扱っている。
Posted by
単体テストに絞って説明がされていることと、テスト手法の導入や選択について、判断の基準にメンバーのモチベーションなども考慮されていることが他のソフトウェアテストの本にはない視点だと感じた。ただ、コードの例はjava, junit だったためイメージが掴みにくかった。
Posted by
高橋寿一さんの『知識ゼロから学ぶ ソフトウェアテスト』の姉妹本ですが、血はつながってないみたい。 筆者と同じ職場に新人さんが入ってきたときに渡したらものすごく喜ばれる本なのだろうと思うけど、「単体テスト」を勉強しようと思って買った人は、がっかりするかもしれません。 という...
高橋寿一さんの『知識ゼロから学ぶ ソフトウェアテスト』の姉妹本ですが、血はつながってないみたい。 筆者と同じ職場に新人さんが入ってきたときに渡したらものすごく喜ばれる本なのだろうと思うけど、「単体テスト」を勉強しようと思って買った人は、がっかりするかもしれません。 というのは、誤解を受けるかもしれませんが「単体テスト」のことはほとんど書いていないから。 この本に書いてあるのは、カバレッジ指向(それもパスカバレッジ限定)のテストをするためのツールの使い方が主であり、問題指向のテストについては「同値分割法」と「境界値分割法」(←内容は境界値分析のことでした)しか紹介してありませんでした。 また、 Mockオブジェクトはテストを進める上での強力なツールですが、Mockオブジェクトがなければ単体テストができないわけではありません。単体テストの終了基準を「カバレッジ率100%」とし、Mockオブジェクトを多用しなければ達成できなくするよりも、テスト済みの実クラスを使用してカバレッジ率の目標を70%程度にしたほうが、テストクラスを使用した単体テストのハードルを下げることになります。 カバレッジから漏れた箇所は、ソースコードレビューでフォローできます。たとえば、例外を握りつぶしていないことを確認できればそれでよいのではないか、というのが筆者の考えです。 といった筆者の意見には賛同できません。 ということで、私は好きになれない本でした。
Posted by
- ネタバレ
※このレビューにはネタバレを含みます
関数の単体試験のコードがついていないライブラリを使うとき、うんざりすることがあります。 単体試験のコードがついていれば、ライブラリの関数の作成者が、何を意図して作ったかを推測できることがあるからです。 本書の紹介で、 「単体テストは、アプリケーションの品質を確保するだけでなく、開発を効率的で楽しくしてくれます。」 と書かれています。 どういう関数(クラス)を作るかは、その関数(クラス)の単体試験をして確かめることによって決めるような仕事の仕方をしてきました。 JAVAでプログラムをあまり書いたことがないので、JAVAの単体試験がこれでいいかどうかはよくわかっていません。 JAVAより抽象的な言語で単体試験を実施するのか。 単体試験をした設計をソースコードの自動生成でJAVAの出力をしたか。 単体試験をJAVAでしたいか、別の言語でしたいか。 ソースコードから、単体試験コードを一部自動生成しているのか。 単体試験の道具を自分で作ったり、改良したりするのか。 いろいろな活動の出発点として、「経験ゼロ」の人が旅立つのによい出発点かもしれない。 人の書いたソースコードの単体試験のソースコードを作らされたり、 単体試験を添付せずに納入されたソースコードの単体試験をしたり、 いろいろな仕事が渦巻いている業界で、生き延びていくためのノウハウかもしれない。
Posted by
- 1