← ドキュメント一覧に戻る

結合試験仕様書

機能間の連携・エンドツーエンドの動作を確認する試験項目を定義する。

1. ミュートリスト同期フロー

flowchart LR
    A[ポップアップ] -->|同期ボタン| B[新しいタブ]
    B -->|content.js注入| C[DOM解析]
    C -->|ユーザー抽出| D[storage.local保存]
    D -->|通知| E[同期完了]
      
ID 分類 シナリオ 前提条件 手順 期待結果
IT-001 正常 同期ボタンでミュートリスト取得 Zennにログイン済み、ミュート設定にユーザーが存在 1. ポップアップを開く
2. 「同期」ボタンを押下
ミュート設定ページが開き、ユーザーリストがstorage.localに保存される。同期完了通知が表示される
IT-002 正常 同期結果がポップアップに反映 IT-001完了後 1. ポップアップを再度開く 同期したユーザーがリストに表示される。件数表示が正しい
IT-003 異常 未ログインで同期 Zennにログインしていない 1. ポップアップから「同期」ボタン押下 ミュート設定ページが開くが、ユーザーが見つからず失敗通知が表示される
IT-004 正常 再同期で最新リストに上書き 既にリストが保存済み。Zenn側でミュートを変更 1. 再度「同期」ボタン押下 最新のミュートリストで上書き保存される

2. ミュートユーザー警告フロー

flowchart LR
    A[ページ読み込み] -->|URL解析| B[ユーザー名取得]
    B -->|storage読み取り| C{ミュート済み?}
    C -->|Yes| D[モーダル表示]
    C -->|No| E[何もしない]
      
ID 分類 シナリオ 前提条件 手順 期待結果
IT-010 正常 ミュートユーザーの記事を開く storageに "catatsuy" を登録済み 1. zenn.dev/catatsuy/articles/xxx にアクセス 警告モーダルが表示される。ユーザー名 @catatsuy が表示される
IT-011 正常 ミュートしていないユーザーの記事を開く storageに "catatsuy" のみ登録 1. zenn.dev/other_user/articles/xxx にアクセス モーダルが表示されず通常閲覧できる
IT-012 正常 ユーザートップページでも検出 storageに "catatsuy" を登録済み 1. zenn.dev/catatsuy にアクセス 警告モーダルが表示される
IT-013 正常 大文字小文字を区別しない storageに "catatsuy" を登録済み 1. zenn.dev/CatAtSuy/articles/xxx にアクセス 警告モーダルが表示される(小文字で比較)
IT-014 境界 ミュートリストが空 storageが空 1. 任意のZennユーザーページにアクセス モーダルは表示されない

3. モーダル操作フロー

ID 分類 シナリオ 前提条件 手順 期待結果
IT-020 正常 「戻る」ボタンで前のページへ モーダル表示中、履歴あり 1. 「戻る」ボタンをクリック history.back() が実行され、前のページに戻る
IT-021 境界 「戻る」ボタン(履歴なし) モーダル表示中、直接URLアクセスで履歴が1件のみ 1. 「戻る」ボタンをクリック Zennトップページへリダイレクトされる
IT-022 正常 「トップページへ」ボタン モーダル表示中 1. 「トップページへ」ボタンをクリック zenn.dev へ遷移する
IT-023 正常 「このまま閲覧する」ボタン モーダル表示中 1. 「このまま閲覧する」をクリック モーダルが閉じ、記事が通常通り閲覧できる
IT-024 正常 Escキーでモーダルを閉じる モーダル表示中 1. Escキーを押下 モーダルが閉じ、記事が通常通り閲覧できる

4. SPA遷移対応フロー

flowchart LR
    A[ページA閲覧中] -->|Zenn内リンク遷移| B[URL変更検知]
    B --> C[既存モーダル削除]
    C --> D[500ms待機]
    D --> E[新URLでミュートチェック]
      
ID 分類 シナリオ 前提条件 手順 期待結果
IT-030 正常 SPA遷移でミュートユーザーページへ Zennの通常ページ閲覧中 1. Zenn内リンクでミュートユーザーの記事へ遷移 遷移後に警告モーダルが表示される
IT-031 正常 SPA遷移でミュートユーザーページから離脱 モーダルを「閲覧する」で閉じた状態 1. Zenn内リンクで別のユーザーページへ遷移 モーダルは表示されない
IT-032 正常 モーダル表示中にSPA遷移 モーダル表示中 1. ブラウザの戻る/進むで別ページへ遷移 既存モーダルが削除され、新URLで再判定される

5. 手動追加 → 検出の連携

ID 分類 シナリオ 前提条件 手順 期待結果
IT-040 正常 手動追加したユーザーの記事で警告表示 ミュートリストが空 1. ポップアップで "testuser" を手動追加
2. zenn.dev/testuser/articles/xxx を開く
警告モーダルが表示される
IT-041 正常 手動削除後は警告が出ない "testuser" が登録済み 1. ポップアップで "testuser" を削除
2. zenn.dev/testuser/articles/xxx を開く
モーダルは表示されない

6. データ永続性

ID 分類 シナリオ 前提条件 手順 期待結果
IT-050 正常 ブラウザ再起動後もリストが保持される ミュートリストに複数ユーザー登録済み 1. Chromeを閉じて再度開く
2. ポップアップを開く
登録したユーザーが引き続き表示される
IT-051 正常 再起動後もミュート検出が動作 IT-050完了後 1. ミュートユーザーの記事を開く 警告モーダルが表示される