本能に基づく共感と嫌悪感が存在しないから、色々無理。
今時の巨大なサービスを、手動テストで何とかしようというのは、蝗害を前に虫取り網で戦いを挑むようなもの。
なんだけど、いまだにそれに頼ってるところ、意外と多い。
E2Eテストとか。
実際には全然品質保証になってなくて、本番デプロイ、障害発生、原因調査、修正、対象テスト追加。
いや、修正された内容のテストを後から追加するって……。
もちろん、「壊れていないことを保証するテスト」は必要だけど、こういうプロダクトは、一度組み上がった部分には絶対手をつけないから、あんまり意味ないんだよな。
そもそも、E2Eテストで品質を担保なんて、20世紀の遺物だぞ。
中身複雑になってるんだから、全パス検査なんて不可能だろ?
それでカバレッジが云々とか、知ってる単語を並べるだけなら、AIだってやれるぞ w
AI 駆動開発のための仕様駆動開発とか、仕様ーー画面仕様、ファイル仕様ーーを決めれば自ずと整うとかいう妄想としか言いようがない。
テストは、設計時にどのように「自動で」検証するか計画して、検証可能、検証容易に作らなきゃ、できるわけがないし、そのための分割統治ーークリーンアーキテクチャなどの多層構造だったり、ドメイン駆動だったりするわけだ。
何かのツールを導入するだけであら不思議!
なんてあるわけないじゃん。
この設計時から検証可能検証容易に作る、ってのがTDDの核心だよ。
全ての処理について、テストを先に作らなきゃいけない、とか、本質を外れてる。
シェイクスピアは、偏見に塗れたレイシストだったのか、冷徹な観察者だったのか?
いいこと思いついた!
俺って頭がいい。
こんなこと考えつく奴なんていないだろう。
と、愚かな選択をする、と言う点で、現在にも通じていると思う。