Spring security jwt unit test - PullRequest
       50

Spring security jwt unit test

0 голосов
/ 07 мая 2020

Новичок в модульном тестировании, как бы я go тестировал этот класс в

@RestController
@CrossOrigin
public class JwtAuthenticationController {
    @Autowired
    private AuthenticationManager authenticationManager;
    @Autowired
    private JwtTokenUtil jwtTokenUtil;
    @Autowired
    private JwtUserDetailsService userDetailsService;

    @PostMapping(value = "/authenticate")
    public ResponseEntity<?> createAuthenticationToken(@RequestBody JwtRequest authenticationRequest) throws Exception {
        authenticate(authenticationRequest.getUsername(), authenticationRequest.getPassword());
        final UserDetails userDetails = userDetailsService.loadUserByUsername(authenticationRequest.getUsername());
        final String token = jwtTokenUtil.generateToken(userDetails);
        return ResponseEntity.ok(new JwtResponse(token));
    }

    private void authenticate(String username, String password) throws Exception {
        try {
            authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(username, password));
        } catch (DisabledException e) {
            throw new Exception("USER_DISABLED", e);
        } catch (BadCredentialsException e) {
            throw new Exception("INVALID_CREDENTIALS", e);
        }enter code here
    }
}

вот остальная часть кода:

https://www.javainuse.com/spring/boot-jwt

1 Ответ

0 голосов
/ 07 мая 2020

Проверить можно двумя способами. Блок и интеграция. Модульное тестирование потребует имитации всех зависимостей, а интеграция (некоторые называют это модулем) потребует простого тестирования веб-слоя. Поскольку вы используете Spring, я предлагаю вам взглянуть на эту статью

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...