回答編集履歴

2

追記

2019/11/19 03:19

投稿

gentaro
gentaro

スコア8949

test CHANGED
@@ -47,3 +47,5 @@
47
47
  入力ファイルの検証→検証済みのファイルからインスタンス生成
48
48
 
49
49
  と明確に2ステップに分かれるので、テストの対象の粒度も小さくできるし理解もしやすいと思う。
50
+
51
+ (ファクトリじゃなくてバリデーションの機能だけもたせたバリデータを外に出しても良いかもしれんけど)

1

追記

2019/11/19 03:19

投稿

gentaro
gentaro

スコア8949

test CHANGED
@@ -19,3 +19,31 @@
19
19
  例外を発生させるのが普通だと思う。
20
20
 
21
21
  エラーをフィールドや戻り値で取得したいのであれば、外部のファクトリに分けた方が良いんじゃないかなぁ。
22
+
23
+
24
+
25
+
26
+
27
+ ---
28
+
29
+ 追記
30
+
31
+
32
+
33
+ よく考えてみたら、
34
+
35
+
36
+
37
+ > 1.画面からアップロードされたCSVファイルを読み取り、各データをBeanのフィールドに格納する。
38
+
39
+
40
+
41
+ とあるので、バリデーションは必須なのか。
42
+
43
+ だったらファクトリは別に分けておいた方が良い気がしてきた。
44
+
45
+
46
+
47
+ 入力ファイルの検証→検証済みのファイルからインスタンス生成
48
+
49
+ と明確に2ステップに分かれるので、テストの対象の粒度も小さくできるし理解もしやすいと思う。