Kri*_*Aun 8 integration-testing spring-boot springjunit4classrunner
我有一个带有2个Spring Boot应用程序的多模块Maven项目
亲
如何设置一个测试,您可以在同一个进程中加载单独的Spring引导应用程序,每个应用程序都有自己的配置上下文.
public abstract class AbstractIntegrationTest {//test module
protected FOO foo;
protected BAR bar;
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@IntegrationTest
@Transactional
@SpringApplicationConfiguration(classes = foo.Application.class)
public class FOO {
public MockMvc mockMvc;
@Autowired
public WebApplicationContext wac;
@Before
public void _0_setup() {
MockitoAnnotations.initMocks(this);
mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();
TestCase.assertNotNull(mockMvc);
}
public void login(String username) {
}
}
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@IntegrationTest
@Transactional
@SpringApplicationConfiguration(classes = bar.Application.class)
public class BAR {
@Autowired
public WebApplicationContext wac;
public MockMvc restMvc;
@Before
public void _0_setup() {
MockitoAnnotations.initMocks(this);
restMvc = MockMvcBuilders.webAppContextSetup(wac).build();
TestCase.assertNotNull(restMvc);
}
public void login(String username) {
}
}
@Before
public void _0_setup() {
foo = new FOO();
bar = new BAR();
}
}
Run Code Online (Sandbox Code Playgroud)
并且是集成测试的一个例子
public class IntegrationTest extends AbstractIntegrationTest {
@Test
public void login() {
foo.login("foologin");
bar.login("barlogin");
}
}
Run Code Online (Sandbox Code Playgroud)
rai*_*amp -1
给定两个包 com.foo.module1 和 com.foo.module2,您必须为每个包创建一个配置类。以模块 1 为例:
@SpringBootApplication public class Config1 {}
Run Code Online (Sandbox Code Playgroud)
如果您想仅使用单个包的 Spring bean 来运行应用程序,您可以使用 SpringApplicationBuilder 来实现。一个工作片段:
new SpringApplicationBuilder(com.foo.module1.Config1.class)
.showBanner(false)
.run()
Run Code Online (Sandbox Code Playgroud)
这将使用 Config1 启动 Spring,它仅在其包中搜索(@ComponentScan 包含在 @SpringBootApplication 中)bean。
如果您想要运行完整的应用程序,例如同时运行所有两个模块,您必须在上层包 com.foo 中创建一个配置类。
在下面提到的情况下,由于像 spring-boot-starters 这样的库,在单个应用程序中运行两个模块可能会以不期望的方式相互干扰,我只能想到两种可能性:
| 归档时间: |
|
| 查看次数: |
3995 次 |
| 最近记录: |