在测试中实例化多个弹簧启动应用程序
我有几个我的弹簧启动应用程序实例,它们并行地使用DB进行一些工作。每个实例都在单独的JVM中运行。
这是一种用Java编写测试用于在一个JVM上测试的方法吗?如下:在测试中实例化多个弹簧启动应用程序
- 设置一些嵌入式数据库为测试目的,甚至只是嘲笑它。我的春节,启动应用程序
- 的
- 开始2-5情况下等待一段时间
- 停止所有实例开始
- 验证DB,检查所有的条件都得到满足。
每个实例都有自己的上下文和类路径。
我认为我可以通过一些shell脚本实现,但我想用Java编写它。
这里最好的方法是什么?
回答:
您可以使用不同的端口多次运行它们。
我做了类似的
@RunWith(SpringJUnit4ClassRunner.class) public class ServicesIntegrationTest {
private RestTemplate restTemplate = new RestTemplate();
@Test
public void runTest() throws Exception {
SpringApplicationBuilder uws = new SpringApplicationBuilder(UserWebApplication.class)
.properties("server.port=8081",
"server.contextPath=/UserService",
"SOA.ControllerFactory.enforceProxyCreation=true");
uws.run();
SpringApplicationBuilder pws = new SpringApplicationBuilder(ProjectWebApplication.class)
.properties("server.port=8082",
"server.contextPath=/ProjectService",
"SOA.ControllerFactory.enforceProxyCreation=true");
pws.run();
String url = "http://localhost:8081/UserService/users";
ResponseEntity<SimplePage<UserDTO>> response = restTemplate.exchange(
url,
HttpMethod.GET,
null,
new ParameterizedTypeReference<SimplePage<UserDTO>>() {
});
here源东西。
以上是 在测试中实例化多个弹簧启动应用程序 的全部内容, 来源链接: utcz.com/qa/262695.html