Go1.24時代のユニットテスト品質向上

Room 2 14:00 - 14:20

本セッションでは、ユニットテストの品質向上のため、Go 1.24 で導入された (*testing.T).Context() とモック生成ライブラリ uber-go/mock を組み合わせたユニットテストの設計手法を解説します。 ## 対象者 - Go での基本的なユニットテスト経験がある方 - ユニットテストの品質向上を目指している方 - 外部依存のあるコードのテスト設計に悩んでいる方 - チームのテスト文化を改善したい方 ## 参加者が得られるもの - ユニットテスト品質を向上させる方法 - (*testing.T).Context() と uber-go/mock を組み合わせた実践的なパターン - 外部依存のあるコードの効果的なテスト戦略 - 保守性が高く、高速で信頼性のあるユニットテストの構築方法 ## セッション内容 ### ユニットテストの課題と解決アプローチ - ユニットテストでよくある問題 - t.Context() によるゴルーチンリークの解決 - gomock による外部依存分離の重要性 ### Context()によるテスト基盤の改善 - HTTP API ハンドラーでの具体的な活用例 - goroutine を使うテストでの適切なリソース管理 ### gomock による外部依存の分離 - 外部 API 呼び出しを含むサービス層のテスト設計 - モック生成から実装までの実践的な流れ ### 品質向上のための実践指針 - 既存コードベースでの段階的な導入戦略 - チーム開発での工夫