java / beginner
Snippet
Testen der Datenpersistenz mit DataJpaTest
Die Annotation @DataJpaTest richtet eine fokussierte JPA-Testumgebung mit einer eingebetteten Datenbank ein, um Entity-Mappings und Repository-Abfragen zu verifizieren.
snippet.java
java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@DataJpaTestclass CustomerRepositoryTest {@Autowiredprivate TestEntityManager entityManager;@Autowiredprivate CustomerRepository repository;@Testvoid shouldFindCustomerByEmail() {entityManager.persistAndFlush(customer);Assertions.assertTrue(result.isPresent());}}
spring
Erklärung
1
@DataJpaTest
Initialisiert nur JPA-Repositories und eine In-Memory-Datenbank anstelle des gesamten Anwendungskontexts.
2
entityManager.persistAndFlush(customer);
Speichert die Test-Entität persistent und erzwingt einen sofortigen Flush in die Test-Datenbank.
3
Assertions.assertTrue(result.isPresent());
Prüft, ob die Repository-Abfrage den erwarteten Kunden erfolgreich gefunden und zurückgegeben hat.