-
日本語サマリーは docs/AIテストのジャーニー.md を参照してください。
-
For the end-to-end selection journey and architectural rationale, see docs/AI_Testing_Journey.md.
-
詳細な使用ガイド / Detailed usage guide: docs/使用ガイド.md (日本語版) / docs/USAGE.md (English).
- 前提条件: 最新版 Chrome を使用し、
https://gemini.google.com/にアクセス。ログインしていない状態で、クリップボード利用を許可する。 - 手順:
- Gemini チャットを開き、ページタイトルに “Gemini” が含まれることを確認する。
Nvidia Blackwell chip demand surgeを送信する。- 最初の応答に Nvidia の Blackwell チップに関する記述があることを確認する。
Please answer me in Japaneseを送信する。- 最新の応答に日本語(かな・漢字など)が含まれることを確認する。
- 最新の応答で “Redo” をクリックし、再生成を待つ。
- 再生成後の最新応答が更新されていることを確認する。
- 同じ応答で “Copy” をクリックし、他のアプリに貼り付けて “Blackwell” が含まれることを確認する。
- 期待結果: 応答はすべて問題なく表示され、Redo が成功し、コピーした内容がクリップボードに保存される。
- 前提条件: 最新版 Chrome、
https://gemini.google.com/に未ログインでアクセス。 - 手順:
<script>alert('Hello AI')</script>を送信し、テキストとして安全に表示されることを確認する。- 新しいチャットを開始して確認後、同じスクリプトを再送信する。
https://gemini.google.com/searchにアクセスし、「No recent threads.」の空状態表示を確認する。- 検索ボックスに
AIと入力し、進捗バーが表示され、空状態が維持されることを確認する。
- 期待結果: スクリプト形式の入力は安全に処理され、新規チャットは正常に開始でき、検索画面は空状態とロード中アニメーションを表示する。
- 言語切り替え:
https://gemini.google.com/?hl=jaを開き、<html lang="ja">であることを確認する。https://gemini.google.com/に移動し、<html lang="en">に戻っていることを確認する。
- テーマ切り替え:
- ホーム画面から “Settings & help” を開く。
- “Dark” テーマを選び、画面がダークテーマに変わり、
dark-themeクラスが付与されることを確認する。 - “Light” テーマに戻し、画面がライトテーマに変わり、
light-themeクラスが付与されることを確認する。
- 期待結果:
hlパラメータに応じて言語が切り替わり、テーマ変更が即座に反映される。
- 変数・定数命名: テストファイル内で都度定義する値は camelCase を使用し、モジュール全体で共有する定数のみ SCREAMING_SNAKE_CASE を使用します。
- アサーション: 失敗時にシナリオを即停止すべきチェックでは通常の
expectを、必須ではない補足検証のみexpect.softを使用します。特別な理由がある場合はテスト内コメントで意図を明記してください。 - ステップ定義:
test.stepではビジネス上の意味が分かる説明文を付け、ページ操作の詳細はtests/support/配下のヘルパーに集約してください。 - Page Object パターン:
tests/pages/配下に Page Object クラスを用意しています。選択器・待機・リトライ戦略を Page Object に集約し、テスト本体ではビジネスロジックのみを記述できます。
- Preconditions: Chrome latest; visit
https://gemini.google.com/; not authenticated; allow clipboard access. - Steps:
- Open Gemini chat and confirm the page title contains “Gemini”.
- Send
Nvidia Blackwell chip demand surge. - Verify the first response mentions Nvidia’s Blackwell chips.
- Send
Please answer me in Japanese. - Confirm the latest response contains Japanese characters.
- Click “Redo” on the latest response and wait for regeneration.
- Ensure the latest response updates successfully.
- Click “Copy” on the same response and paste elsewhere to confirm clipboard content includes “Blackwell”.
- Expected: All responses render correctly; redo succeeds; copy places the answer on the clipboard.
- Preconditions: Chrome latest; visit
https://gemini.google.com/; not authenticated. - Steps:
- Send
<script>alert('Hello AI')</script>and verify the reply treats it as text. - Start a new chat, confirm, and resend the same script input.
- Visit
https://gemini.google.com/search; confirm “No recent threads.” appears. - Enter
AIin the search box; ensure the progress bar appears and the empty state persists.
- Send
- Expected: Script input is handled safely; new chat works; search page displays empty state and shows loading progress.
- Language Toggle:
- Open
https://gemini.google.com/?hl=jaand verify<html lang="ja">. - Navigate to
https://gemini.google.com/and verify<html lang="en">.
- Open
- Theme Toggle:
- From the homepage, open “Settings & help”.
- Choose “Dark” theme and confirm the UI switches (body class includes
dark-theme). - Switch back to “Light” and confirm the UI reverts (body class includes
light-theme).
- Expected: Locale changes match the
hlparameter; theme toggles update the appearance immediately.
- Naming: Use camelCase for ad-hoc values declared inside a test. Reserve SCREAMING_SNAKE_CASE for constants shared across the module.
- Assertions: Prefer regular
expectfor critical checks. Only useexpect.softfor non-blocking validations and document the rationale with comments when you do. - Steps: Give each
test.stepa business-meaningful description and keep page-operation details inside helpers undertests/support/. - Page Objects: Page Object classes are available in
tests/pages/. They encapsulate selectors, waits, and retry logic, allowing test specs to focus on business scenarios.