Porqué mockito не может mockear мой класс?

У меня есть следующая услуга:

package inventarios.service;

import inventarios.repository.LoginUsersRepository;
import inventarios.to.LoginUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class LoginUsersService {
    @Autowired
    LoginUsersRepository usersRepository;

    public List<LoginUser> findAll(){
        return usersRepository.findAll();
    }
}

И следующее унитарное доказательство:

import inventarios.service.LoginUsersService;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.platform.runner.JUnitPlatform;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;

@ExtendWith(MockitoExtension.class)
@RunWith(JUnitPlatform.class)
class GUITest {

    @Mock
    private LoginUsersService usersService;

    @InjectMocks
    private LoginWindow loginWindow = new LoginWindow();

    @Test
    void main() {
        Mockito.when(usersService.findAll()).thenReturn(Collections.emptyList());
 }
}

Однако ее прокрутив изображение в окне я получаю:

org.mockito.exceptions.base. MockitoException:

Mockito cannot mock this class: class inventarios.service.LoginUsersService.

Mockito хан only mock нечетное число - private и нечетное число - конец classes. If yoгre not sure why yoгre getting this ошибка, please доклад to the mailing list.

Мой класс публичный и не является конечной. Что могло бы быть плохое?

2
задан 06.08.2019, 16:20
1 ответ

HallГ© проблема, поскольку упоминает Г©sta об ответе в inglГ©s , mockito нуждается в некоторых librerГ-схвати, не Гєnicamente core, asГ - что remplacГ© mockito-core из-за mockito-all в Гєltima versiГіn стабильная и funcionГі чуда.

1
ответ дан 01.12.2019, 22:31

Теги

Похожие вопросы