由于Security,我正在为Rest控制器测试的设置而挣扎。
我正在尝试测试一个基本的rest端点:
@RestController
@RequestMapping(value = "/product")
public class ProductInformationController {
private final ProductInformationService productInformationService;
...
@DeleteMapping(value = "/{id}")
public ResponseEntity&
我将spring安全性添加到我的应用程序中,它工作得很好,但现在现有的测试被破坏了,当我运行它们时,我得到:
***************************
APPLICATION FAILED TO START
***************************
Description:
Field userDetailsService in xxx.xxx.someapp.spring.security.WebSecurityConfig required a bean of type 'xxx.xxx.sardinatank.someapp.security.se
最近,我使用以下类向我的Spring项目添加了Spring安全:
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class MySecurityConfig {
}
因此,默认情况下,我的所有URL现在都受到身份验证和自生成密码的保护。
问题是,@WebMvcTest类中用于单元测试控制器的所有测试:
@RunWith(SpringRunner.class)
@WebMvcTest(SomeController.class)
public class SomeControllerTest
当我想要使用@WebMvcTest测试控制器时,我有一个问题-在应用程序加载时,我得到: ...
Field customUserDetailsService in com.test.config.SecurityConfig required a bean of type 'com.test.security.CustomUserDetailsService' that could not be found.
The injection point has the following annotations:
- @org.springframework.bean
如何才能在@MicronautTest中只运行控制器而不运行存储库/服务,就像spring中的@WebMvcTest所做的那样对它们进行模拟?
@RestController
@RequestMapping("/api")
public class EmployeeRestController {
@Autowired
private EmployeeService employeeService;
@GetMapping("/employees")
public Lis
带有@WebMvcTest的构造函数注入是而不是工作的。未初始化模拟bean SomeService。为什么?Mockito不是独立于Spring创建SomeService吗?
如果我使用@MockBean,一切都可以,但是我想使用构造函数注入。
有什么想法吗?
@WebMvcTest with constructor injection not working
package com.ust.webmini;
@RequiredArgsConstructor
@RestController
public class HelpController {
@NonNull
pr
在Spring应用程序中,我有两个POJO,Foo和Bar,以及一个BarToFooConverter,如下所示:
@Component
public class BarToFooConverter implements Converter<Bar, Foo> {
@Override
public Foo convert(Bar bar) {
return new Foo(bar.getBar());
}
}
我还有一个利用转换器的控制器:
@RestController("test")
public class TestCo
我无法在spring 1.4中运行一个简单的测试。我遵循了官方网站的教程,但我没有让它开始工作。
每次我收到以下错误时:
java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
有什么想法吗,暗示?
提前感谢
编辑:
这是控制器
@Controller
public class UserManagementController {
我有一个错误控制器(用来处理路径"/error"),它在应用程序运行时工作,但在使用@WebMvcTest进行单元测试时不能工作。
如果我将请求直接发送到错误控制器的路径,错误控制器也可以工作。
这是我的错误控制器:
@Controller
public class ErrorController implements org.springframework.boot.web.servlet.error.ErrorController {
@RequestMapping("/error")
public ResponseEntity<Li
我使用的是spring-boot-1.5.10以及spring-security-test & spring-boot-hateoas和JUnit-5。我在单元测试中的application.MockMvc中有一些定制的杰克逊配置,而不是选择那些定制的杰克逊配置。我想知道如何在MockMvc中注入这些配置,同时也想知道如何在MockMvc中注入定制的Jackson模块。请查找以下代码以供参考,
@RunWith(SpringRunner.class)
@WebMvcTest(BookController.class)
public class BookControllerTests {