Posts

Showing posts with the label @DataJpaTest

@SqlMergeMode - Spring Testing Annotation

Image
In this tutorial, we will learn about the  @SqlMergeMode  annotation, and at the end, we will see how the Spring Boot application can utilize the  @SqlMergeMode  annotation for testing. Therefore, read the post till the end. Before moving on, read our previous tutorial about  @Sql (click here) annotation .  Within the Spring testing context, SQL scripts and statements are executed against a database using the Spring  @Sql  annotation. About @SqlMergeMode The @SqlMergeMode  is a part of the  org.springframework.test.context.jdbc  package. It can be applied at the test class level or the test method level.  @Sql  declarations at the method level take precedence over those at the class level. But we can change this behavior by configuring  @SqlMergeMode . Two type of merge mode are there: MERGE OVERRIDE The OVERRIDE merge mode will be used by default. With the OVERRIDE mode, method-level @Sql declarations will effectively override class-level @Sql declarations.  The  method-level @SqlMer

@Sql - Spring Testing Annotation

Image
In this tutorial, we will learn about the @Sql annotation, and at the end, we will see how the Spring Boot application can utilize the @Sql annotation for testing. Therefore, read the post till the end. About @Sql The @Sql is a part of the org.springframework.test.context.jdbc  package. It can be applied at the test class level or the test method level.  Within the Spring testing context, SQL scripts and statements are executed against a database using the Spring @Sql annotation. @Sql declarations at the method level take precedence over those at the class level. But we can change this behavior by configuring @SqlMergeMode .  The annotation supports the following attributes: scripts statements executionPhase config value 1. scripts It specifies the path on which SQL scripts should run. The following example shows how to use it: @Sql (scripts = { "/create-schema.sql" }) public class StudentRepositoryTests { We can specify the path of multiple SQL scripts, like below. @Sql