Как имитировать метод поиска репозитория JPA в модульных тестахJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как имитировать метод поиска репозитория JPA в модульных тестах

Сообщение Anonymous »

Я пытаюсь реализовать UT свой небольшой проект, и у меня возникла проблема.
Мое приложение использует простую многоуровневую архитектуру, и я не могу использовать UT на уровне сервиса.
На самом деле я пытаюсь имитировать класс CrudRepository из Spring-data.
Я пытаюсь имитировать метод findAll одного из моих репозиториев, который расширяет этот класс, но Mockito не может имитировать интерфейс.Есть ли способ сделать это, кроме самого создания компонента и его заполнения?

[Обновление]
Вот код репозитория:< /p>

package fr.kaf.interview.Repository;

import fr.kaf.interview.model.Book;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface BookRepository extends CrudRepository {
}


Вот UT:

@ExtendWith(MockitoExtension.class)
class BookServiceTest {

@Mock
private BookRepository bookRepository;

@InjectMocks
private BookService bookService;

@Test
public void should_get_All_books_from_database() {
//Given

Person author = new Person();
author.setFirstName("Ka");
author.setLastName("AwQl");

Book firstBook = new Book();
firstBook.setTitle("One Book");
firstBook.setAuthors(singletonList(author));

Book secondBook = new Book();
secondBook.setTitle("Second Book");
secondBook.setAuthors(singletonList(author));

given(bookRepository.findAll()).willReturn(asList(firstBook, secondBook));

//When
List allBooks = bookService.getAllBooks();

//Then
assertThat(allBooks).containsExactly(firstBook, secondBook);

}

}


Подробнее здесь: https://stackoverflow.com/questions/546 ... unit-tests
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Есть ли лучший способ имитировать работу в модульных тестах?
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Есть ли лучший способ имитировать работу в модульных тестах?
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Есть ли лучший способ имитировать работу в модульных тестах? [закрыто]
    Anonymous » » в форуме C#
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous
  • Есть ли лучший способ имитировать работу в модульных тестах? [закрыто]
    Anonymous » » в форуме C#
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous
  • Как имитировать/имитировать события очереди Laravel в тестах?
    Anonymous » » в форуме Php
    0 Ответы
    33 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»