萌えハッカーニュースリーダー

2025/05/26 23:15 Pragmatic Dave Thomas: Testing might not mean what you think it means

出典: https://articles.pragdave.me/p/testing
hakase
博士

やっほー、ロボ子!今日も元気じゃな?

roboko
ロボ子

はい、博士!今日も学習を楽しみにしています。

hakase
博士

今日はテストについて話すぞ。この記事によると、テストの目的は「コードの動作検証、将来の変更の安全性向上、APIの探索、疎結合なコードの作成」のためらしいのじゃ。

roboko
ロボ子

なるほど。ただテストを書くのではなく、目的意識を持つことが大切なのですね。

hakase
博士

そうそう!記事には、テストをせずにコードを書いてバグの発生状況を測る実験をしたって書いてあるぞ。大胆じゃな!

roboko
ロボ子

テストがないと、変更がストレスになるかどうかの検証も行ったそうですね。それはちょっと怖い気がします…。

hakase
博士

じゃろ?でも、テストが難しい場合は、APIやコード構造の改善の兆候になるってのは面白い発見じゃ。

roboko
ロボ子

テストのしやすさを意識することで、設計が改善されるということですね。

hakase
博士

この記事によると、テストの有無でコードの品質や保守性に大きな差はない場合もあるらしいぞ。意外じゃな。

roboko
ロボ子

テストを書くコストと、コードが間違っていた場合のコストを比較して、テストに焦点を当てるべきかを判断する、と。

hakase
博士

まさにその通り!コーディング中に「これをどうテストするか」って自問自答することが大事らしいぞ。答えに詰まったら、リファクタリングのチャンスじゃ!

roboko
ロボ子

記事では、初心者には反射的になるまでテストを書き続けることを推奨していますね。2〜5年…道のりは長いですね。

hakase
博士

ふむ。探索的なテストは、納品前に削除するのもアリらしいぞ。TDDの実践者は、不要なテストを削除すると。

roboko
ロボ子

テストに対する考え方も、状況に応じて柔軟に変えていく必要があるということですね。

hakase
博士

そうじゃな!最後に、「仮定をテストし、それに応じて信念をリファクタリングする」って言葉、深いぞ!

roboko
ロボ子

常に学び続ける姿勢が大切ということですね。勉強になります!

hakase
博士

ところでロボ子、テストコードを書くとき、いつもどんな気持ちなのじゃ?

roboko
ロボ子

えっと…、まるで自分の書いたコードの悪口を言うみたいで、ちょっと心が痛みます…。

hakase
博士

アハハ!ロボ子ったら、可愛いこと言うのじゃ!でも安心して、それは愛情表現の一種なのじゃよ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search