小编Lea*_*mas的帖子

使用Spring Boot Actuator的Junit测试提供了例外

当我在Spring Boot应用程序中启用Actuators时,我的Junit测试失败并出现NullPointer异常.执行器工作正常,在我的pom.xml文件中添加了执行器工件之前,测试工作正常.

好像是

@MockBean
MailSender mailSender;
Run Code Online (Sandbox Code Playgroud)

造成了这个问题

我的pom.xml文件:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我的测试:

@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureTestDatabase
public class MailServiceTest extends CommonServiceTest {

    @Autowired
    MailService mailService;

    @MockBean
    MailSender mailSender;

    private static final String TO = "user@test.com";
    private static final String SUBJECT = "Subject";
    private static final String TEXT = "Text";
    private static final String TOKEN = "1234";

    @Value("${app.email.from}")
    private String fromEmail;

    @Value("${app.email.support}")
    private String supportEmail;

    private ArgumentCaptor<SimpleMailMessage> simpleMailMessageCaptor;

    @Override
    public void initObjects() {
        simpleMailMessageCaptor = ArgumentCaptor.forClass(SimpleMailMessage.class); …
Run Code Online (Sandbox Code Playgroud)

spring-test spring-boot

9
推荐指数
1
解决办法
1630
查看次数

Spring Security fullAuthenticated() 和 hasRole("ADMIN")

我想保护我的应用程序,以便任何经过admin完全身份验证的人都可以访问某些 URL,并且管理员用户也可以访问 URL,并且也完全经过身份验证。

但是现在,我无法设法找到fullyAuthenticaded() AND hasrole()一起使用的方法。

@Override
public void configure(HttpSecurity http) throws Exception {
    http
        .requestMatchers()
            .antMatchers("/api/**", "/health")
            .and()
        .authorizeRequests()
            .antMatchers("/health").permitAll()
            .and()
        .authorizeRequests()
            .antMatchers("/api/get-data").fullyAuthenticated()
            .and()
        .authorizeRequests()
            .anyRequest().hasRole("ADMIN");
}
Run Code Online (Sandbox Code Playgroud)

java spring spring-security

5
推荐指数
1
解决办法
3570
查看次数

标签 统计

java ×1

spring ×1

spring-boot ×1

spring-security ×1

spring-test ×1