Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AI コードレビューが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Mutz
July 28, 2025
Technology
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AI コードレビューが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった
読書シェア会 vol.7
Mutz
July 28, 2025
More Decks by Mutz
See All by Mutz
AI時代になぜ書くのか
mutsumix
0
510
『アキハバラ電脳組』から考える、場所がコミュニティを生む理由
mutsumix
0
310
AndroidにBluetoothでいろいろつなげてみた
mutsumix
0
30
AIでAndroid→iOS アプリ移植をやってみた
mutsumix
0
48
2025年 AIに助けられたこと
mutsumix
0
140
あなたに水耕栽培を愛していないとは言わせない
mutsumix
1
340
地域コミュニティを活かす市民開発の可能性
mutsumix
0
230
社員のスキルチェックのためにスマホアプリを作った話
mutsumix
0
91
軽率に資料をスライド化しよう
mutsumix
0
84
Other Decks in Technology
See All in Technology
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
3k
Socrates × Looker 〜セマンティックレイヤーで進化するデータ分析エージェント〜
hanon52_
3
2.5k
Oracle Cloud Infrastructure:2026年6月度サービス・アップデート
oracle4engineer
PRO
0
100
SONiCで構築・運用する生成AI向けパブリッククラウドネットワーク ~実装編~
sonic
0
270
Claude Codeをどのように キャッチアップしているか
oikon48
13
8.5k
いまさら聞けない「仕様駆動開発入門」 〜AI活用時代の開発プロセスを考える〜
findy_eventslides
2
160
Lightning近況報告
kozy4324
0
170
スタートアップにAmazon EKSは早すぎる? マルチプロダクト戦略を加速する Platform Engineeringの実践 / Is Amazon EKS Too Soon for Startups? Practical Platform Engineering to Accelerate a Multi-Product Strategy
elmodev09
0
260
LayerXにおけるセキュリティ管理の現在地と次の一手
tosho
0
240
アジャイルな経理と Claude Code と経営の未来
kawaguti
PRO
3
150
AIチャット検索改善の3週間
kworkdev
PRO
2
140
【NRUG vol.18】なぜ多くのオブザーバビリティ導入は失敗するのか
nrug_member
0
190
Featured
See All Featured
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
200
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
330
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
310
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1.1k
Everyday Curiosity
cassininazir
0
230
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
230
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Transcript
1
梶原 睦 / かじはら むつみ 株式会社 シスマック DX ソリューション事業部 部長
Twitter(現 X): @Mutsumix_dev Voicy: Mutsumix の進捗どう? 技術書典: 自宅水耕栽培で毎日サラダ生活 最近は受託開発の提案やったり営業やったり研修講師やったり総務やったり 自己紹介 2
AI コーディング、やってますか? AI コーディング、やってますか? 3
AIにコード書かせる チャット形式でのコーディング補助からCLIやIDE統合を使った実装が今や主流 任せられる範囲は広がり、人間の方がCopilot(副操縦士)になっていく 人間の役割はコーディング結果のチェック めちゃくちゃ楽になってるはずだけど... AI コーディング、やってますか? 読書シェア会 vol.7 |
AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 4
自走させると最初は順調 だんだん方向性がずれてくる 気づいたら修正不可能な状態 AI コーディングの現実 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった
5
目 Grep は面倒だし... 成果物に対してテストをさせれば、ずれを修正できるのでは? よし、AI にテストを書かせよう プロンプト: まずテストを書いて、それを突破するように実装して 何か良い方法はないものか? 読書シェア会
vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 6
AI「テスト完了しました! 」 describe("UserService", () => { it("should create user", ()
=> { const mockDb = jest.fn(); const mockValidator = jest.fn(); // TODO: implement this test expect(true).toBe(true); // とりあえず通る }); }); モックだらけ、都合悪いところがコメントアウトされている、何をテストしているか 意味不明 こんなの受け入れていいのか?? 結果 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 7
AIにテストをさせる方法自体は悪くないはずだ AIにテストをさせる方法自体は悪くないはずだ 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 8
テストについての本を読もう テストについての本を読もう 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 9
「テストについてちゃんと学んで、効果的なテス トの書き方を学ぶぞ」 3 部構成: 第 1 部:テスト駆動開発(TDD)を使った実装 ある金融システムの多国通貨対応 第 2
部:xUnit の例 テスティングフレームワーク構築 第 3 部:TDDパターンとリファクタリングについて ケント・ベック『テスト駆動開発』 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に 俺の勘違いだった 10
わかる 印象に残ったページ 不安はためらいを生む。 不安はコミュニケーションを減らす。 不安はフィードバックから逃げ腰にさせる。 不安はイライラさせる。 読書シェア会 vol.7 | AI
コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 11 「テスト駆動開発は、プログラミング中の不安をコントロールする手法だ。...
TDDは品質担保にとどまらず、開発者の不安を軽減する開発手法のことらしい 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 12 TDDはテスト技法ではない。 TDDは分析技法であり、設計技法であり、実際には 開発の全てのアクティビティを構造化する技法なのだ。
TDD においてテストは目的を達成するための手段であり、その目的は、大いなる 自信を伴うコードだ。
1. まずはテストを一つ書く 2. 全てのテストを走らせ、新しいテスト の失敗を確認する 3. 小さな変更を行う 4. 全てのテストを走らせ、全て成功する ことを確認する
5. リファクタリングを行なって重複を除 去する テスト駆動開発の流れ 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決し ようとして読んだら、根本的に俺の勘違いだった 13
「あれ、これテストの書き方の本じゃない...?」 TDD の本質: テスト設計手法 プログラミング中の不安を取り除く開発手法 読んでみた結果 読書シェア会 vol.7 | AI
コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 14
核心は 心理的安全性 小さなステップで確実に前進 常に動作するコードを維持 複雑さをコントロール プログラミング中の開発者の不安を軽減 TDD の真の価値 読書シェア会 vol.7
| AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 15
根本的に俺の勘違いだった 根本的に俺の勘違いだった 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 16
Before (勘違い) 問題: AI コードのチェックが面倒 試み: AI にテストを書かせる → 失敗
期待: テストで品質担保 After (理解) 実際の TDD: 開発プロセス自体の改善 根本的な勘違いに気づいた 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 17
これからのAIコーディングへの応用可能性は? これからのAIコーディングへの応用可能性は? 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 18
https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with- kent 最近のKent Beck氏のポッドキャストでの発言 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 19
「開発者の役割は、コードを書く人から、AIに良いコードとは何かを教える人へ と変わっている。テストがその教育プログラムなのだ。 」
AI時代のソフトウェア開発を考える(2025/07版) TDDの翻訳者、和田卓人(t-wada)さんの発言 Vibe Coding をはじめとした AIの開発生産性により、開発規模が大きくなる と発生する諸問題が、ごく短期間で発生するようになった 問題の構造は変わらず、顕在化までの時間が圧倒的に短くなっただけ 仕様や設計を見つけるよくしていく過程がTDD 細部を作りながら、全体の設計にフィードバックしていく過程が重要
読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 20
間違ったアプローチ いい感じにテストを作って とAIに指示 指示する本人も何をテストされるかよくわからない TDD を AI コーディングに応用するなら 読書シェア会 vol.7
| AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 21
正しいアプローチ 「タスクを小さな実装に分解 → 逐次消化 → リファクタリング」 とAIに指示 方向性のずれを小さなうちに修正 ゴールに向けた一歩ずつの前進 最初から大きななゴールを目指さないアプローチ
(バイブコーディングの醍醐味は 失われるが) 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 22
1. 最終ゴールを明確にする: 要件ヒアリングと設計文書(README.md、DESIGN.md)作成 2. 現在の状態から次の小さなステップを定義: TODO.mdで進行状況確認し、作業対象を決定 3. そのステップだけを実装: RED(失敗テスト)→GREEN(最小実装)→REFACTOR(改善)を順次実行 4.
動作確認: 各段階でテスト実行とコミットによる確認 5. 次のTODOを提示: FEEDBACK段階で設計文書更新と新しいタスクの発見・追加 6. 2-5を繰り返し: 実際のプロンプト例 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 23
Claude Code のカスタムスラッシュコマンドとして登録してみた Mutsumix/ore-tdd.md https://gist.github.com/Mutsumix/75a6c162d83580ad6b9d1b134892213d 実際のプロンプト例 読書シェア会 vol.7 | AI
コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 24
サイクルの図解 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 25
学んだこと TDD は「テスト手法」ではなく開発者の不安を軽減する開発手法 AIコーディング にもこの開発プロセスを適用できる可能性 読む前の思い込みに気をつける 自分の理解を超えた優れた概念はまだまだある 次のアクション この手法で実際にプロジェクトを試して効果を検証 xUnit
の実装の章を書籍に従って写経 『ソフトウェアエンジニアリング』を読む 継続的にソフトウェアを開発していくための考え方を学ぶ 学んだこと + 次のアクション 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 26
ありがとうございました! 読書シェア会 vol.7 | AI コードチェックが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった 27