こんにちは、stackoverflow コミュニティです。
spring-data JPA (または Micronaut バージョン) のリポジトリ テストが必要かどうかについて、議論がありました。
これは私のアプリケーションのセットアップです:
@Controller
➡ @Service
/ @Sigleton
➡Repository<Entity>
私のサービステストでは、@ExtendWith(SpringExtension::class)
拡張機能 (Junit5)を使用します
テスト セットアップを作成するとき、@MockBean
呼び出す必要のある他のシステム (REST-API など) を削除しましたが@Autowire
、私Repository
の . テスト データをセットアップするときは、注入されたリポジトリを使用して、必要なエンティティをH2インメモリ データベースに保存するだけです。
これにより、データベース ロジックとビジネス ロジックもテストされます。100% のテスト カバレッジの場合、本番環境で発生する可能性のあるすべてのデータベース呼び出しをテストしました。
ただし、プロジェクトでよく目にするのは、Repository
が嘲笑されていることです。カスタム リポジトリの呼び出しをテストするには、リポジトリ機能が期待どおりに機能することを確認するための個別のテストがあります。
これについてのあなたのコメントは何ですか。リポジトリ モックを使用しないアプローチと、それを使用するアプローチのどちらを好みますか?その理由は?