首先把需要的jar包加入到项目里,因为都是测试相关的,所以scope都是test,引入jar包的pom.xml需要增加如下的依赖(spring 的版本需要在3.2以上): 代码语言:javascript 代码运行次数:0 运行 AI代码解释 <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>${testng.version}</...
modelAndView.addObject("msg","Controller接口"); modelAndView.setViewName("test"); returnmodelAndView; } } 2.2 在springmvc的配置文件中注册bean <beanid="/t1"class="com.lv.controller.ControllerTest1"/> 2.3 启动Tomcat,测试 3 测试使用@Controller注解方式(推荐使用) 3.1 在springmvc的配置文件中头加入cont...
三、单元测试类 对Controller测试时,还需要由Controller层中的Action去执行相应的业务代码,对于Action的依赖注入就可以非常方便的使用ReflectionTestUtils.setField(controller,"assetScrapHandleAction",aSHAction)(非常重要),将aSHAction注入到controller层中的属性名为assetScrapHandleAction中 @PrepareForTest({OrgUtils.clas...
初始化MockMvc有2种方式: 方式1:明确指定需要测试的“Controller”类进行配置 方式2:基于Spring容器进行配置,包含了Spring MVC环境和所有“Controller”类,通常使用这种方式。 代码语言:javascript 代码运行次数:0 运行 AI代码解释 @SpringBootTest public class TestControllerTest { MockMvc mockMvc; // 初始化MockMvc ...
代码1:直接Controller调用方法 import static org.junit.Assert.*; import java.sql.SQLException; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.mock.web.MockHttpServletRequest; ...
所以, 本篇博客我们主要讲解下Spring MVC控制器的2种测试方法: 部署项目后测试 借助JUnit和Spring Test框架测试 1. 部署项目后测试 在前2篇博客中,我们采取的就是这种测试方式,即将项目打成war包,部署到Tomcat中,运行项目后, 借助浏览器或者Postman等工具对控制器进行测试。
本教程中的代码示例使用 @ExtendWith 批注告诉 JUnit 5 启用 Spring 支持。从 Spring Boot 2.1 开始,我们不再需要加载 SpringExtension,因为它作为元注释包含在 Spring Boot 测试注解中,例如 @DataJpaTest、@WebMvcTest 和 @SpringBootTest。我们现在可以 @Autowire 从应用程序上下文中获取我们需要的所有 bean。
在业务逻辑被调用后,我们期望controller将结果封装到JSON字符串并放在HTTP响应里。在这个例子,我们期望HTTP响应body里有一个有效的JSON格式的UserResource对象: @Test void whenValidInput_thenReturnsUserResource() throws Exception { MvcResult mvcResult = mockMvc.perform(...) ...
在Create New Class面板上输入java类(控制器)名称TestController,完成包的创建。注意,如果业务逻辑复杂,可在controller包下面继续按照模块创建子包。控制器名称要以Controller结尾,方面其他人员进行二次开发时,能够明白此类的作用。 创建成功后,会在com.zzfeng.springbootdem.controller下面出现一个名叫TestController的java...
如果我们只需要对控制层接口(Controller)进行测试,且该接口不依赖@Service、@Component等注解声明的Spring Bean时,可以借助@WebMvcTest来启用只针对Web控制层的测试,例如 @WebMvcTest class CustomSpringInjectApplicationTests { @Autowired MockMvc mockMvc;