---
generated_at: 2026-02-18 10:30:00
metrics:
  claims_total: 120
  claims_with_evidence: 118
  claims_without_evidence: 2
confidence_derived: 0.98
---

# 根拠レポート：public-Database 単体テストケース一覧

## 本レポートについて

### 目的
本レポートは、生成された単体テストケース一覧の信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各テストケースに対して、ソースコード内のパラメータ定義、処理ロジック、エラーハンドリングなどの根拠（Evidence）が存在するか
2. **根拠との整合性**：テストケースの内容がソースコードの実装と矛盾していないか
3. **網羅性**：各関数のパラメータ、正常系・異常系・境界値のケースを適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.98**
  - 根拠あり：118 / 120、根拠なし：2
- 優先レビュー（高）
  1. **UT-DBS-047 (S3バックアップ)**：SQL Server 2022新機能のため実環境検証推奨
  2. **UT-DBS-065 (ページリストア)**：Enterprise Edition限定機能の検証が必要

## 2) 参照した情報（Evidence一覧）
> 以下の実在するソースファイルを解析して根拠を抽出

- E-01: `public/Get-DbaDatabase.ps1` - パラメータ定義（L216-241）、フィルタリングロジック（L303-431）
- E-02: `public/New-DbaDatabase.ps1` - パラメータ定義（L179-208）、DB作成ロジック（L275-483）
- E-03: `public/Remove-DbaDatabase.ps1` - パラメータ定義（L88-100）、削除ロジック（L117-175）
- E-04: `public/Backup-DbaDatabase.ps1` - パラメータ定義（L317-364）、バックアップ処理（L366-1080）
- E-05: `public/Restore-DbaDatabase.ps1` - パラメータ定義（L447-504）、リストア処理（L505-927）
- E-06: `public/Copy-DbaDatabase.ps1` - パラメータ定義（L239-300）、コピー処理
- E-07: `public/Mount-DbaDatabase.ps1` - パラメータ定義（L96-109）、アタッチ処理（L110-175）
- E-08: `public/Dismount-DbaDatabase.ps1` - パラメータ定義（L86-98）、デタッチ処理（L99-226）
- E-09: `public/Find-DbaDatabase.ps1` - パラメータ定義（L87-98）、検索処理（L99-157）
- E-10: `public/Rename-DbaDatabase.ps1` - パラメータ定義（L202-224）、リネーム処理（L226-882）
- E-11: `public/Remove-DbaDatabaseSafely.ps1` - パラメータ定義（L145-166）、安全削除処理

## 3) Claims と根拠の対応（レビューの主戦場）

### Get-DbaDatabase (UT-DBS-001 - UT-DBS-015)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | SqlInstanceパラメータでDB取得 | E-01 L217-218 (Mandatory, ValueFromPipeline) | ○ |
| C-02 | Databaseパラメータでフィルタ | E-01 L220, L368 | ○ |
| C-03 | Patternパラメータで正規表現検索 | E-01 L222, L358-365, L370 | ○ |
| C-04 | ExcludeUserでシステムDB絞り込み | E-01 L224, L303-309 | ○ |
| C-05 | ExcludeSystemでユーザーDB絞り込み | E-01 L226, L303-309 | ○ |
| C-06 | RecoveryModelフィルタ | E-01 L234, L395, L409 | ○ |
| C-07 | Statusフィルタ | E-01 L229-230, L408 | ○ |
| C-08 | Ownerフィルタ | E-01 L227, L371, L394, L404 | ○ |
| C-09 | Encryptedフィルタ | E-01 L228, L321-324, L396, L410 | ○ |
| C-10 | NoFullBackupフィルタ | E-01 L235-236, L413-424 | ○ |
| C-11 | IncludeLastUsedオプション | E-01 L240, L261-301, L441-443 | ○ |
| C-12 | パイプライン処理 | E-01 L217 (ValueFromPipeline) | ○ |
| C-13 | ExcludeUser/ExcludeSystem同時指定エラー | E-01 L246-248 | ○ |
| C-14 | 接続失敗エラー処理 | E-01 L255-258 (Stop-Function) | ○ |
| C-15 | ExcludeDatabase全除外で空結果 | E-01 L369 フィルタロジック | ○ |

### New-DbaDatabase (UT-DBS-016 - UT-DBS-029)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-16 | 基本的なDB作成 | E-02 L280-285, L453-459 | ○ |
| C-17 | Name未指定時ランダム名 | E-02 L243-244 | ○ |
| C-18 | Collation設定 | E-02 L186, L235-241, L287-290 | ○ |
| C-19 | RecoveryModel設定 | E-02 L187-188, L292-295 | ○ |
| C-20 | Owner設定 | E-02 L189, L461-469 | ○ |
| C-21 | DataFilePath設定 | E-02 L190, L247-249, L264-271 | ○ |
| C-22 | LogFilePath設定 | E-02 L191, L251-253, L255-262 | ○ |
| C-23 | ファイルサイズ設定 | E-02 L192-200, L326-342, L367-383 | ○ |
| C-24 | SecondaryFileGroup作成 | E-02 L201, L391-450 | ○ |
| C-25 | 複数DB一括作成 | E-02 L185 (string[]), L275 foreach | ○ |
| C-26 | 既存DB名エラー | E-02 L276-278 | ○ |
| C-27 | 無効Collationエラー | E-02 L235-241 | ○ |
| C-28 | SQL 2000で高度設定エラー | E-02 L230-231 | ○ |
| C-29 | PrimaryFilesizeがmodel以下の場合 | E-02 L312-318 | ○ |

### Remove-DbaDatabase (UT-DBS-030 - UT-DBS-036)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-30 | 単一DB削除 | E-03 L117-132 (KillDatabase) | ○ |
| C-31 | 複数DB一括削除 | E-03 L96 (object[]), L110 | ○ |
| C-32 | パイプライン入力 | E-03 L97-98 (ValueFromPipeline) | ○ |
| C-33 | フォールバック削除処理 | E-03 L133-172 (try/catch chain) | ○ |
| C-34 | システムDB保護 | E-03 L114-115 (system_dbs除外) | ○ |
| C-35 | 存在しないDB処理 | E-03 L110 (Where-Object) | ○ |
| C-36 | Status='Dropped'返却 | E-03 L125-131, L138-144, L153-159 | ○ |

### Backup-DbaDatabase (UT-DBS-037 - UT-DBS-053)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-37 | フルバックアップ | E-04 L333-334, L806-811 | ○ |
| C-38 | 差分バックアップ | E-04 L789-795 (Incremental) | ○ |
| C-39 | ログバックアップ | E-04 L797-804 | ○ |
| C-40 | CopyOnlyオプション | E-04 L329, L731-733, L813 | ○ |
| C-41 | 圧縮バックアップ | E-04 L339, L751-783 | ○ |
| C-42 | Checksumオプション | E-04 L340, L785-787 | ○ |
| C-43 | Verifyオプション | E-04 L341, L989-1023 | ○ |
| C-44 | FileCountストライプ | E-04 L338, L439-442, L849-853 | ○ |
| C-45 | 暗号化バックアップ | E-04 L359-361, L522-555, L747-749 | ○ |
| C-46 | Azure Blobバックアップ | E-04 L345-348, L589-673 | ○ |
| C-47 | S3バックアップ | E-04 L381, L593-619, L966-976 | △ |
| C-48 | OutputScriptOnly | E-04 L358, L1043-1051 | ○ |
| C-49 | tempdbバックアップエラー | E-04 L685-688 | ○ |
| C-50 | Simple復旧モデルでログエラー | E-04 L714-719 | ○ |
| C-51 | フルなしで差分エラー | E-04 L724-729 | ○ |
| C-52 | MaxTransferSize検証 | E-04 L573-579, L602-607 | ○ |
| C-53 | BlockSize検証 | E-04 L581-587 | ○ |

### Restore-DbaDatabase (UT-DBS-054 - UT-DBS-068)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-54 | フルリストア | E-05 L874-902 (Invoke-DbaAdvancedRestore) | ○ |
| C-55 | DatabaseNameリネーム | E-05 L453, L798 | ○ |
| C-56 | ポイントインタイムリストア | E-05 L457, L816, L878 | ○ |
| C-57 | NoRecoveryオプション | E-05 L458, L880 | ○ |
| C-58 | WithReplaceオプション | E-05 L459, L877 | ○ |
| C-59 | DestinationDataDirectory | E-05 L454, L624-628, L792 | ○ |
| C-60 | VerifyOnlyオプション | E-05 L464, L812-814, L887 | ○ |
| C-61 | 複数ファイルリストア | E-05 L693-700 | ○ |
| C-62 | Continueオプション | E-05 L479, L601-606, L881 | ○ |
| C-63 | Recoverオプション | E-05 L486, L725-766 | ○ |
| C-64 | OutputScriptOnly | E-05 L463, L882 | ○ |
| C-65 | PageRestoreオプション | E-05 L496-497, L860-867, L903-921 | △ |
| C-66 | バックアップファイル不存在 | E-05 L777-779 警告メッセージ | ○ |
| C-67 | 互換性検証 | E-05 L845-847 (Test-DbaBackupInformation) | ○ |
| C-68 | MaxTransferSize検証 | E-05 L581-584 | ○ |

### Copy-DbaDatabase (UT-DBS-069 - UT-DBS-078)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-69 | BackupRestoreコピー | E-06 L251-252, L308-311 | ○ |
| C-70 | DetachAttachコピー | E-06 L268-271, L316-318 | ○ |
| C-71 | NewNameリネーム | E-06 L296 | ○ |
| C-72 | Prefix設定 | E-06 L297 | ○ |
| C-73 | UseLastBackup | E-06 L286, L312-315 | ○ |
| C-74 | 複数Destination | E-06 L243 (DbaInstanceParameter[]) | ○ |
| C-75 | AllDatabases | E-06 L247-250 | ○ |
| C-76 | Force上書き | E-06 L298, L329-331 | ○ |
| C-77 | SharedPath未指定エラー | E-06 L308-311 | ○ |
| C-78 | DetachAttach複数宛先エラー | E-06 L316-318 | ○ |

### Mount-DbaDatabase (UT-DBS-079 - UT-DBS-084)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-79 | FileStructure指定アタッチ | E-07 L104, L155-167 | ○ |
| C-80 | FileStructure自動検出 | E-07 L132-152 | ○ |
| C-81 | DatabaseOwner設定 | E-07 L105, L118-124, L157 | ○ |
| C-82 | AttachOption設定 | E-07 L106-107, L157 | ○ |
| C-83 | 既存DB名エラー | E-07 L128-129 | ○ |
| C-84 | ファイル不存在エラー | E-07 L145-149 | ○ |

### Dismount-DbaDatabase (UT-DBS-085 - UT-DBS-094)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-85 | 単一DBデタッチ | E-08 L207-223 | ○ |
| C-86 | パイプライン入力 | E-08 L93-94 (ValueFromPipeline) | ○ |
| C-87 | UpdateStatistics | E-08 L95, L210 | ○ |
| C-88 | Forceミラーリング解除 | E-08 L168-179 | ○ |
| C-89 | ForceでAG削除 | E-08 L181-196 | ○ |
| C-90 | Force接続切断 | E-08 L162-166, L198-205 | ○ |
| C-91 | システムDBエラー | E-08 L125-127 | ○ |
| C-92 | レプリケーションスキップ | E-08 L129-132 | ○ |
| C-93 | スナップショットスキップ | E-08 L135-140 | ○ |
| C-94 | ミラーリングForceなしエラー | E-08 L143-145 | ○ |

### Find-DbaDatabase (UT-DBS-095 - UT-DBS-101)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-95 | 名前パターン検索 | E-09 L92-93, L107-117 | ○ |
| C-96 | Exact完全一致 | E-09 L96, L107-108 | ○ |
| C-97 | Property=Owner検索 | E-09 L92-93, L108, L111 | ○ |
| C-98 | Property=ServiceBrokerGuid | E-09 L92-93 | ○ |
| C-99 | 複数インスタンス検索 | E-09 L89 (ValueFromPipeline), L100 foreach | ○ |
| C-100 | オブジェクト数取得 | E-09 L132-137, L149-151 | ○ |
| C-101 | 一致なしで空結果 | E-09 L107-117 フィルタロジック | ○ |

### Rename-DbaDatabase (UT-DBS-102 - UT-DBS-113)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-102 | DB名リネーム | E-10 L338-369 | ○ |
| C-103 | プレースホルダー置換 | E-10 L341, L394, L469-470, L519-520, L625-626, L685-686 | ○ |
| C-104 | FileGroupNameリネーム | E-10 L380-425 | ○ |
| C-105 | LogicalNameリネーム | E-10 L437-556 | ○ |
| C-106 | FileNameリネーム | E-10 L567-725 | ○ |
| C-107 | Previewモード | E-10 L219, L354, L410, L486, L644, L703, L811 | ○ |
| C-108 | Force接続切断 | E-10 L217, L350-352 | ○ |
| C-109 | DATE変数 | E-10 L229, L341, L394, L469, L519, L625, L685 | ○ |
| C-110 | システムDBスキップ | E-10 L312-315 | ○ |
| C-111 | AG参加DBスキップ | E-10 L320-323 | ○ |
| C-112 | 既存DB名エラー | E-10 L345-348 | ○ |
| C-113 | パラメータ未指定エラー | E-10 L267-270 | ○ |

### Remove-DbaDatabaseSafely (UT-DBS-114 - UT-DBS-120)
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-114 | DBCC検証後削除 | E-11 L7-9 (.DESCRIPTION) | ○ |
| C-115 | NoDbccCheckDb | E-11 L154-155 | ○ |
| C-116 | 別サーバー検証 | E-11 L152-153, L188-195 | ○ |
| C-117 | BackupCompression | E-11 L162 | ○ |
| C-118 | AllDatabases | E-11 L160 | ○ |
| C-119 | BackupFolder必須 | E-11 L157 (Mandatory) | ○ |
| C-120 | 異サーバーでローカルパスエラー | E-11 L199-200 | ○ |

## 4) 不足情報（Unknown / Missing）
- **UT-DBS-047 (S3バックアップ)**：SQL Server 2022の新機能であり、実環境での動作検証データが不足
  - 候補：SQL Server 2022テスト環境でのS3バックアップ実行結果 / AWS S3またはMinIOでの検証ログ
- **UT-DBS-065 (ページリストア)**：Enterprise Edition限定機能のため、全環境でのテスト実行が困難
  - 候補：Enterprise Edition環境でのページリストア検証 / Get-DbaSuspectPage出力との連携テスト

## 5) リスクフラグ（レビュー観点）
- **0（低リスク）**：大部分のテストケース - ソースコードに明確な根拠があり、一般的なSQL Server環境で検証可能
- **1（中リスク）**：Azure/S3関連テスト (UT-DBS-046, UT-DBS-047) - クラウド環境依存、資格情報設定が必要
- **1（中リスク）**：Enterprise Edition機能 (UT-DBS-065) - Edition依存機能

## 6) レビュアーチェックリスト（最小）
- [ ] 各関数の主要パラメータがテストケースでカバーされているか確認
- [ ] 正常系・異常系・境界値の観点が適切に分散しているか確認
- [ ] システムDB保護に関するテストケースが含まれているか確認
- [ ] バックアップ/リストアの整合性チェックテストが含まれているか確認
- [ ] クラウドストレージ（Azure/S3）関連テストは実環境での追加検証が必要か判断
- [ ] SQL Serverバージョン依存機能（SQL 2000制限、SQL 2022 S3機能）のテストケース確認
