AIにテキトーにテスト書かせるとモックの戻り値アサートするだけの無駄コード大量発生するのあるある
「何を」テストさせるか指示しないとこうなる
言語や処理系による。コンパイル言語だと単体テストはほぼトートロジーなので不要と判断。スクリプト言語はまた別。結合テスト(コントローラ)は新規作成時はほぼ無意味だけれど改修時にハーネスになる。
僕はifの条件をうっかり逆で書いてしまうことがあるので、ユニットテストには大変助けられてます。それはそうと、AIの書くユニットテストが微妙なのは同意。
そうだねぇ感。
本当に所感だけだった
AIにユニットテストを書かせると、GUIではMockや内部構造をなぞるだけの無価値なテストを量産しがち。Claude Opus 4.8/GPT-5.5でも書くべき対象判断はまだ難しく、品質担保はUI操作型検証が本命とする所感。
それこそテストの品質はこういうものだと教え込むのは人間側の責任で、ちゃんとガードレールを置いとけば、ほぼ品質が低いテストは弾かれる。TDDは滅べ。
AIによるユニットテスト実装についての所感
AIにテキトーにテスト書かせるとモックの戻り値アサートするだけの無駄コード大量発生するのあるある
「何を」テストさせるか指示しないとこうなる
言語や処理系による。コンパイル言語だと単体テストはほぼトートロジーなので不要と判断。スクリプト言語はまた別。結合テスト(コントローラ)は新規作成時はほぼ無意味だけれど改修時にハーネスになる。
僕はifの条件をうっかり逆で書いてしまうことがあるので、ユニットテストには大変助けられてます。それはそうと、AIの書くユニットテストが微妙なのは同意。
そうだねぇ感。
本当に所感だけだった
AIにユニットテストを書かせると、GUIではMockや内部構造をなぞるだけの無価値なテストを量産しがち。Claude Opus 4.8/GPT-5.5でも書くべき対象判断はまだ難しく、品質担保はUI操作型検証が本命とする所感。
それこそテストの品質はこういうものだと教え込むのは人間側の責任で、ちゃんとガードレールを置いとけば、ほぼ品質が低いテストは弾かれる。TDDは滅べ。