【发布时间】:2016-06-12 23:01:40
【问题描述】:
情况:
- 我在微服务中使用
Spring Cloud和Spring Boot,该微服务正在加载数据库配置信息以配置连接。 - 我创建了一个测试来获取其余接口,使用
Swagger获取文档。 - 我想禁用加载数据库配置,因为没有必要。
代码如下:
@WebAppConfiguration
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = {Application.class, Swagger2MarkupTest.class}, loader = SpringApplicationContextLoader.class)
@ActiveProfiles("test")
public class Swagger2MarkupTest {
@Autowired
private WebApplicationContext context;
private MockMvc mockMvc;
@Autowired
protected Environment env;
@Before
public void setUp() {
this.mockMvc = MockMvcBuilders.webAppContextSetup(this.context).build();
}
@Test
public void convertSwaggerToAsciiDoc() throws Exception {
this.mockMvc.perform(get("/v2/api-docs").accept(MediaType.APPLICATION_JSON))
.andDo(Swagger2MarkupResultHandler.outputDirectory("target/docs/asciidoc/generated")
.withExamples("target/docs/asciidoc/generated/exampless").build())
.andExpect(status().isOk());
}
}
如何在不加载数据库配置的情况下运行测试? 这可能吗?
【问题讨论】:
-
模拟你的服务层。就这么简单。
标签: java spring junit spring-boot spring-test