9
现状:如何在Spring Boot中模拟db连接以进行测试?
- 我在微服务使用
Spring Cloud
与Spring Boot
,即微服务加载的是DB的配置信息来配置的连接。 - 我创建了一个测试,使用
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());
}
}
如何,我可以运行,而无需加载数据库配置的考验吗? 这可能吗?
模拟你的服务层。就那么简单。 –