GEMINI LABEN
ROBOTICS — 8月31日に停止した ER 1.6 preview には後継があります。Gemini Robotics ER 2 が公開プレビュー中で、通常版とストリーミング版の2種類が提供されていますVIDEO — ER 2 の成功・失敗判定は静止画ではなく生の映像フィード上で動きます。こぼれ・滑り・位置ずれのような、実行の途中で起きる失敗を捉えられる設計ですDEADLINE — 次の期限は9月30日、gemini-omni-flash-preview の廃止です。移行先は8月27日に GA になった gemini-omni-1.1-flash で、残り4週間を切りましたAPIKEY — 残りの標準 API キーは、制限付きのものも含めて9月中に全面停止します。移行先は Google Cloud サービスアカウントに紐付く auth キー形式ですPRICE — Gemini 3.7 Flash の導入価格 $0.75/$3.75 per 1M は12月31日までです。2027年1月1日から $1.50/$7.50 になるため、年を跨ぐ見積もりは2本立てが要りますAUDIO — Gemini 3.5 Transcribe は85言語以上の言語検出、話者ダイアライゼーション、単語単位タイムスタンプ、最大1,000語のカスタム語彙バイアスに対応していますROBOTICS — 8月31日に停止した ER 1.6 preview には後継があります。Gemini Robotics ER 2 が公開プレビュー中で、通常版とストリーミング版の2種類が提供されていますVIDEO — ER 2 の成功・失敗判定は静止画ではなく生の映像フィード上で動きます。こぼれ・滑り・位置ずれのような、実行の途中で起きる失敗を捉えられる設計ですDEADLINE — 次の期限は9月30日、gemini-omni-flash-preview の廃止です。移行先は8月27日に GA になった gemini-omni-1.1-flash で、残り4週間を切りましたAPIKEY — 残りの標準 API キーは、制限付きのものも含めて9月中に全面停止します。移行先は Google Cloud サービスアカウントに紐付く auth キー形式ですPRICE — Gemini 3.7 Flash の導入価格 $0.75/$3.75 per 1M は12月31日までです。2027年1月1日から $1.50/$7.50 になるため、年を跨ぐ見積もりは2本立てが要りますAUDIO — Gemini 3.5 Transcribe は85言語以上の言語検出、話者ダイアライゼーション、単語単位タイムスタンプ、最大1,000語のカスタム語彙バイアスに対応しています
記事一覧/開発ツール
開発ツール/2026-04-29上級

Gemini API を Vitest でテストする — TypeScript プロジェクトのモック設計と Function Calling 検証パターン

TypeScript で Gemini API を呼ぶコードを Vitest でテストする実践パターンです。SDK のモック設計、Function Calling とストリーミングの検証、MSW への降ろし方、夜間に実 API を一本だけ通すスモークまで扱います。

gemini-api285vitesttypescript15testingmockfunction-calling20

プレミアム記事

プロンプトを一行直したら、本番のレスポンスが別物になっていた

これは私が個人開発のサイドプロジェクトで実際に踏んだ事故です。商品レビューを Gemini で要約する関数のシステム指示を「箇条書きで 3 点」から「重要度順に 3 点」に変えただけで、出力に含まれる「総合評価」の一文が消え、リリース後しばらく気づかないまま静かに品質が落ちていました。Pytest なら回帰テストの記事はたくさんあるのに、TypeScript 側で同じことをやるための実装例が意外と見つからず、結局その場で書き起こすことになりました。

本稿はそのときの構成を整理したものです。Vitest と @google/generative-ai SDK をどう組み合わせれば、Gemini を呼ぶコードを安心して書き直せる土台ができるのか。Function Calling の検証やストリーミングのテストを、私が普段使っているパターンのままお見せします。

対象は TypeScript で Gemini API を触り始めて数週間〜数ヶ月、テストの土台を整えたい個人開発者の方を想定しています。チーム開発でも、最小構成の出発点として読んでいただけると思います。

なぜ Vitest を選ぶのか — Jest と比べた個人開発者目線

最初にここを書いておきます。Jest でも同じことはできます。ただ TypeScript と ESM 中心のプロジェクトでは、私は Vitest のほうを選びます。理由は三つあります。

まず、ESM サポートが素直です。@google/generative-ai を含む最近の SDK は ESM を前提に設計されていることが多く、Jest だと transform 設定で苦戦するケースがありますが、Vitest はほぼ素のまま動きます。次に、Vite ベースのプロジェクト(Astro、SvelteKit、Remix など)と設定を共有できます。最後に、起動が速く、テスト駆動でプロンプトを試行錯誤する作業に向いています。Gemini を呼ぶテストは比較的時間がかかるので、テストランナー側のオーバーヘッドが小さいのは地味に効きます。

逆に Jest を残す理由がある場面もあります。React Native や、既存の Jest 資産が大きいプロジェクトでは無理に乗り換える必要はありません。本稿のパターンはほぼそのまま Jest にも移植できますので、お手元の環境に合わせて読み替えてください。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
429・503 を意図的に発生させてリトライ上限と即時失敗を固定するテスト設計
SDK の戻り値の形が変わってもテストが道連れにならない MSW ハンドラの書き方
実 API を一本だけ夜間に通してモデル非推奨と認証失効だけを検知する構成
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Gemini Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

開発ツール2026-04-03
Next.js 15 App Router × Gemini API フルスタック本番構築
Next.js 15 App RouterとGemini APIを組み合わせたフルスタックAIアプリを本番レベルで構築する完全ガイド。Server Actions、Streaming、RAG、認証・レート制限まで徹底解説します。
開発ツール2026-03-31
Gemini API × MCP サーバー自作 — TypeScript でカスタムツールサーバーを構築しAIエージェントを拡張する
Model Context Protocol (MCP) のカスタムサーバーを TypeScript で自作し、Gemini API と連携する方法を解説。設計パターン、認証、エラーハンドリング、本番デプロイまで網羅する実践ガイドです。
API / SDK2026-05-09
Gemini Live API で画面共有しながら音声で対話する『AI ペアプログラマー』を TypeScript で構築する
Gemini Live API と getDisplayMedia で『画面を見せながら音声で相談できる AI ペア』を TypeScript で構築する手順を、コスト最適化と落とし穴まで含めて実装プレイブックにまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →