Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AI開発を加速するためにテスト戦略を言語化した
Search
yoshihiro shu
May 20, 2026
Programming
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AI開発を加速するためにテスト戦略を言語化した
yoshihiro shu
May 20, 2026
More Decks by yoshihiro shu
See All by yoshihiro shu
管理画面いらずの運用を実現するため、Protocol Buffers から MCP サーバーを生成する protoc プラグインを作った
yoshihiro_shu
0
46
3プロトコルを実現するconnect-go / Fukuoka.go#20
yoshihiro_shu
1
420
Other Decks in Programming
See All in Programming
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
490
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
460
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
580
Verilogで学ぶCPU自作入門
uyuki234
8
4k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
560
contenteditable と日本語入力に向き合う
colorful12
0
170
Are APIs Still Relevant in the AI Era?
soyuka
0
430
最近”作らせてる” ローカルAIアプリの話
akit37
0
200
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
140
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
150
Androidだけじゃない、DroidKaigiで広がった私の技術スタック
akkeylab
0
120
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
260
Featured
See All Featured
A better future with KSS
kneath
240
18k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
610
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
470
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
710
We Have a Design System, Now What?
morganepeng
55
8.4k
Facilitating Awesome Meetings
lara
57
7.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Documentation Writing (for coders)
carmenintech
77
5.6k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Transcript
AI開発を加速するために テスト戦略を言語化した Go Connect #13 — 2026/05/20 朱 義宏 /
GMOペパボ 1
自己紹介 朱 義宏 GMOペパボ ロリポップ・ムームードメイン事業部 ロリポップ! 固定IPアクセス 趣味 GWにスリランカに行ってきました ウイスキーが好き
X: @yoshihiro_shu AI時代のGoテスト戦略 2
None
背景: AIエージェントがPRを量産する時代になった AI時代のGoテスト戦略 4
課題: 「正しさ」を証明する基準が言語化されていない PRは量産されるが、ロジックが正しいことをレビューするコストが高い 実装ごとに、正しさを担保するテストにばらつきがある テストはあっても、ロジックの正しさをテスト I/O だけで判断できない → 結局、ロジックが正しいかどうかは 毎回コードを読み解いて判断するしかない
根本原因: 「何を見れば正しいと言えるか」の基準そのものが言語化されていない AI時代のGoテスト戦略 5
2つのプロダクト課題 ① データ遷移の整合性 似たようなユースケースでも、生成されるデータが違う 例: 新規契約 / 二回目以降の新規契約 で発行レコードや適用される時刻が異なる ②
日時依存のビジネスロジック 実行時刻によって結果が変わる 例: 月末に契約すると契約期間が翌月末まで延びる AI時代のGoテスト戦略 6
テストがほとんどシナリオテストに集約されていた テストピラミッドの「結合テスト」: Go サーバー + DB を起動し、外部サービスはモック化して 一連のフローをAPI単位でテストを行っている。 担保していたこと: API
レスポンス(ステータス・メッセージ内容) DB の状態変化(レコードの生成・論理削除) 日時・金額計算(契約期間・請求金額) 外部システムへの副作用(メール送信・リソースの作成) AI時代のGoテスト戦略 7
解決案: テストによって責務を分ける シナリオテスト 結合テスト層 確認すること 期待通りのレコードが ⽣成・削除されているか ユースケーステスト サービス単位 確認すること
契約期間・価格が 期待通りに算出されるか f(x) 単体テスト 関数単位 確認すること 関数の 振る舞いが変わらないか AI時代のGoテスト戦略 8
シナリオテスト → 「データ遷移」だけを見る 保証すること: ユースケースに応じて、期待通りのレコードやリソースが生成・削除されているか 検証しないこと: 日時によって結果が異なるビジネスロジック AI時代のGoテスト戦略 9
ユースケーステスト → 「日時・価格計算」を固定日時で検証 する 保証すること: 日時依存ロジック(契約期間・課金額)が期待通りに算出されるか 検証しないこと: DBへのレコード生成・削除 AI時代のGoテスト戦略 10
単体テスト → 「振る舞いの不変性」を守る 保証すること: 関数の入出力が変わらないこと リファクタリングなどで振る舞いが壊れていないことの確認 意図しないロジックの変更の検知 AI時代のGoテスト戦略 11
結果: テストでロジックの正しさが判断できるようになった テストの input / output を見るだけでロジックの正しさを判断できる → コードを読み解く必要がなくなった テストケースの漏れ
を防ぎやすくなった → 責務が分かれたことで、各層の網羅性が見えやすい レビューに 別の観点 を考える余裕ができた → 認知負荷が下がり、設計・性能などにも目が向く AI時代のGoテスト戦略 12
まとめ 今回考えたのは「大量のPRをマージしてもシステムが壊れない仕組み」だけ レビューには本来、コーディングルール・セキュリティ・パフォーマンスなど多くの観点がある → テストの責務を言語化したのは、その第一歩 → 同じように観点ごとに言語化していきたい AI時代のGoテスト戦略 13