spring boot——MockMvc的用法

 
1.pom配置

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>

2.所需对象及Controller

public class User {
private String id;
private String username;
private Date birthday; public User(String id, String username) {
this.id = id;
this.username = username;
} //get/set
}

构造一个queryUserList服务

@RestController
@RequestMapping(value="/user")
public class UserController { @GetMapping
public List<User> queryUserList(){
//使用反射打印出信息
System.out.println(ReflectionToStringBuilder.toString(condition,ToStringStyle.MULTI_LINE_STYLE));
List<User> users = new ArrayList<>();
users.add(new User("1","张三"));
users.add(new User("2","李四"));
users.add(new User("3","王五"));
return users;
}
}

编写mockmvc测试用例

@RunWith(SpringRunner.class)
@SpringBootTest
public class UserControllerTest { //伪造mvc环境
@Autowired
private WebApplicationContext mac; private MockMvc mockMvc; @Before
public void setup() {
mockMvc = MockMvcBuilders.webAppContextSetup(mac).build();
} @Test
public void whenGenInfoSuccess() throws Exception{
String result = mockMvc.perform(get("/user")
.contentType(MediaType.APPLICATION_JSON_UTF8))
.andExpect(status().isOk())
.andReturn().getResponse().getContentAsString();
System.out.println(result);
}
}

原文地址:http://blog.51cto.com/mazongfei/2334045

最新文章

  1. lua创建文件和文件夹
  2. 关于读取txt文件中文乱码问题
  3. ssh默认端口更改后,如何正常使用git?
  4. C#窗体计算器
  5. Jetty实战之 安装 运行 部署
  6. Android取得电池的电量
  7. Swift - defer关键字(推迟执行)
  8. 安卓开发中ScrollView不能用RelativeLayout的解决方案
  9. IOC/DI的基本思想
  10. 关于在freemarker模板中遍历数据模型List&lt;JavaBean&gt;的经验
  11. Centos-ip配置详解
  12. iOS开发——判断是否第一次启动
  13. AngularJS 讲解,四 Directive
  14. jsp、freemarker、velocity区别详解
  15. [ZJOI2010]排列计数
  16. java实现打印前台页面
  17. BroadcastReceiver 接收系统短信广播
  18. HDU 5242 Game(贪心)
  19. Android Dialog的整个生命周期
  20. 廖大大python学习笔记1

热门文章

  1. iOS获取设备型号的方法
  2. POJ3630(Trie树)
  3. 【转】 Pro Android学习笔记(五九):Preferences(3):EditText和Ringtone Preference
  4. Spring boot 学习二:入门
  5. js提交数据时需判断是点击事件还是回车键
  6. k8s 基础 k8s架构和组件
  7. BAT小米奇虎美团迅雷携程等等各大企业校招,笔试面试题。
  8. Angular08 依赖注入
  9. 项目一:第四天 1、快递员的条件分页查询-noSession,条件查询 2、快递员删除(逻辑删除) 3、基于Apache POI实现批量导入区域数据 a)Jquery OCUpload上传文件插件使用 b)Apache POI读取excel文件数据
  10. 第四周作业-视频学习、教材作业wireshark