No,テストID,対象クラス,対象メソッド,テスト観点,テストケース名,前提条件,入力値,期待結果,優先度,備考
1,UT-ANL-001,Webkul\Analytic\Models\Record,partner,正常系,パートナーリレーションが正しく取得できること,Recordが存在しパートナーが紐づいている,partner_id=1,Partner型のオブジェクトが返却される,中,BelongsToリレーション
2,UT-ANL-002,Webkul\Analytic\Models\Record,partner,異常系,パートナーが存在しない場合nullが返却されること,Recordは存在するがpartner_idがnull,partner_id=null,nullが返却される,中,nullable外部キーの検証
3,UT-ANL-003,Webkul\Analytic\Models\Record,creator,正常系,作成者リレーションが正しく取得できること,Recordが存在し作成者が紐づいている,creator_id=1,User型のオブジェクトが返却される,中,BelongsToリレーション
4,UT-ANL-004,Webkul\Analytic\Models\Record,creator,異常系,作成者が存在しない場合nullが返却されること,Recordは存在するがcreator_idがnull,creator_id=null,nullが返却される,中,nullable外部キーの検証
5,UT-ANL-005,Webkul\Analytic\Models\Record,user,正常系,ユーザーリレーションが正しく取得できること,Recordが存在しユーザーが紐づいている,user_id=1,User型のオブジェクトが返却される,中,BelongsToリレーション
6,UT-ANL-006,Webkul\Analytic\Models\Record,user,異常系,ユーザーが存在しない場合nullが返却されること,Recordは存在するがuser_idがnull,user_id=null,nullが返却される,中,nullable外部キーの検証
7,UT-ANL-007,Webkul\Analytic\Models\Record,company,正常系,会社リレーションが正しく取得できること,Recordが存在し会社が紐づいている,company_id=1,Company型のオブジェクトが返却される,中,BelongsToリレーション
8,UT-ANL-008,Webkul\Analytic\Models\Record,company,異常系,会社が存在しない場合nullが返却されること,Recordは存在するがcompany_idがnull,company_id=null,nullが返却される,中,nullable外部キーの検証
9,UT-ANL-009,Webkul\Analytic\Models\Record,$fillable,正常系,fillableに定義された属性がマスアサインメントで設定できること,なし,"['type'=>'expense','name'=>'Test','date'=>'2024-01-01','amount'=>100,'unit_amount'=>10,'partner_id'=>1,'company_id'=>1,'user_id'=>1,'creator_id'=>1]",各属性が正しく設定される,高,マスアサインメント保護
10,UT-ANL-010,Webkul\Analytic\Models\Record,$fillable,異常系,fillableに含まれない属性はマスアサインメントで設定できないこと,なし,"['id'=>999,'created_at'=>'2024-01-01']",id/created_atが設定されない,高,マスアサインメント保護
11,UT-ANL-011,Webkul\Analytic\Models\Record,$casts,正常系,date属性がCarbonインスタンスにキャストされること,Recordが存在する,date='2024-01-15',Carbon\Carbonインスタンスが返却される,中,日付型キャスト
12,UT-ANL-012,Webkul\Analytic\Models\Record,$casts,境界値,date属性にnullが設定された場合の挙動,Recordが存在する,date=null,nullが返却される,中,nullable日付のキャスト
13,UT-ANL-013,Webkul\Analytic\Models\Record,$table,正常系,テーブル名がanalytic_recordsであること,なし,なし,$tableプロパティが'analytic_records',低,テーブル定義の確認
14,UT-ANL-014,Webkul\Analytic\Models\Record,create,正常系,レコードが正常に作成できること,DBに接続可能,有効なデータセット,レコードがDBに保存される,高,CRUD基本操作
15,UT-ANL-015,Webkul\Analytic\Models\Record,create,異常系,必須項目が欠けている場合の挙動,DBに接続可能,空配列,DB例外またはバリデーションエラー,高,必須項目チェック
16,UT-ANL-016,Webkul\Analytic\Models\Record,update,正常系,レコードが正常に更新できること,Recordが存在する,name='Updated Name',nameが更新される,高,CRUD基本操作
17,UT-ANL-017,Webkul\Analytic\Models\Record,delete,正常系,レコードが正常に削除できること,Recordが存在する,対象Record,レコードがDBから削除される,高,CRUD基本操作
18,UT-ANL-018,Webkul\Analytic\Models\Record,amount,境界値,amount属性に0が設定された場合,なし,amount=0,0が正しく保存・取得される,中,金額の境界値
19,UT-ANL-019,Webkul\Analytic\Models\Record,amount,境界値,amount属性に負の値が設定された場合,なし,amount=-100,-100が正しく保存・取得される,中,経費・収入の符号
20,UT-ANL-020,Webkul\Analytic\Models\Record,amount,境界値,amount属性に大きな値が設定された場合,なし,amount=999999999.99,値が正しく保存・取得される,中,数値精度の確認
21,UT-ANL-021,Webkul\Analytic\Models\Record,unit_amount,境界値,unit_amount属性に0が設定された場合,なし,unit_amount=0,0が正しく保存・取得される,中,単価の境界値
22,UT-ANL-022,Webkul\Analytic\Models\Record,type,正常系,type属性が正しく保存・取得されること,なし,type='expense',文字列が正しく保存・取得される,中,分析タイプの識別
23,UT-ANL-023,Webkul\Analytic\Models\Record,type,境界値,type属性に空文字が設定された場合,なし,type='',空文字が保存・取得される,低,空文字の取り扱い
