データの永続化に Hibernate を使用する Spring Web アプリケーションの単体テストを作成しています。私はアプリケーションを開発していません。防御的プログラミングが適用されていることを確認するために、エンティティのセッターをテストする JUnit テストを作成するのが良い考えであるかどうか疑問に思います (つまり、アプリケーションがデータベースに無効なデータを挿入しようとしないことをテストします。たとえば、age が負でないことをテストします)。 )。
一方、@Size、@NotEmpty などのアノテーションは、エンティティのフィールドで既に使用されていることがわかります。
これは私に質問をもたらします:データベースとの相互作用のためのガードを置くのに適切な場所/レイヤーは何ですか?エンティティセッターのテストを書く必要がありますか?