从生产资料和测试资料排除中排除剩余控制器

时间:2019-01-17 01:25:20

标签: java spring

我的应用程序具有一个用于用户管理的RestController;这对预生产非常有帮助。我希望避免在生产配置文件处于活动状态时允许spring将UserController连接到应用程序中。

@RestController
@RequestMapping(value = "/api/v1/user")
public class UserController {

    private static final Logger LOG = LoggerFactory.getLogger(UserController .class);

我的测试班

@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
@ActiveProfiles(value = {SPRING_PROFILE_TEST})
public class UserControllerTest {

1 个答案:

答案 0 :(得分:0)

通过使用配置文件,我能够将控制器组件限制为仅测试和开发。

@Profile({SPRING_PROFILE_TEST, SPRING_PROFILE_DEVELOPMENT})
public class UserController {

在测试类中,我添加了以下代码以确保UserController仍能正确接线

@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
@ActiveProfiles(value = {SPRING_PROFILE_TEST})
public class UserControllerTest {
    @Autowired
    private UserController UserController; //confirm controller can be autowired

Spring Docs