赞
踩
1.File——>Settings——>Plugins,搜索Squaretest,然后install就好了,插件安装完成后需要重启一下
2.打开class-右键–选择Generate–生成test
TestMe插件可以智能分析被测试类的依赖类,结合Mockito+Junit等单元测试框架,生成Mock/InjectMocks依赖关系,自动生成单元测试类。
1.File——>Settings——>Plugins,搜索TestMe,然后install就好了,插件安装完成后需要重启一下。
2.打开class-右键–选择testme–生成test
测试中的URL字符串现在包含${port}占位符,它会被实际的端口号替换。
确保你的HomeController和其他相关组件(如User和ResponseResult类)正确配置并且能够被Spring Boot应用识别。如果问题仍然存在,检查是否有防火墙规则阻止了本地端口的连接,或者是否还有其他服务正在占用相同的端口。如果使用的是Docker容器或其他虚拟化环境,还需要检查网络设置是否允许容器内部的服务与宿主机进行通信。
package com.zrj.tools.platform.controller; import com.zrj.tools.platform.entity.ResponseResult; import com.zrj.tools.platform.entity.User; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.web.client.TestRestTemplate; import org.springframework.boot.test.web.server.LocalServerPort; import org.springframework.core.ParameterizedTypeReference; import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.ResponseEntity; import org.springframework.test.context.TestPropertySource; import static org.assertj.core.api.AssertionsForInterfaceTypes.assertThat; @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @TestPropertySource(locations = "classpath:application.properties") class HomeControllerTest { @LocalServerPort private int port; @Autowired private TestRestTemplate restTemplate; @Test public void testUpdateEndpoint() { HttpHeaders headers = new HttpHeaders(); headers.setContentType( org.springframework.http.MediaType.APPLICATION_JSON ); User user = new User(); user.setName( "John Doe" ); HttpEntity<User> entity = new HttpEntity<>( user, headers ); ResponseEntity<ResponseResult<User>> response = restTemplate.exchange( "http://localhost:" + port + "/home/update", HttpMethod.POST, entity, new ParameterizedTypeReference<ResponseResult<User>>() { } ); assertThat( response.getStatusCodeValue() ).isEqualTo( 200 ); assertThat( response.getBody().getData() ).isEqualTo( user ); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。