介绍
怎么利用5与Springboot对应用进行测试?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
春季启动可以和大部分流行的测试框架协同工作:通过春天JUnit创建单元测试;生成测试数据初始化数据库用于测试;弹簧引导可以跟BDD(行为主要驱动开发)工具,黄瓜和斯波克协同工作,对应用程序进行测试。
在网络应用程序中,我们主要是对服务层做单元测试,以前单元测试都是使用junit4,对控制器层做集成测试或者接口测试,对控制器层的测试一般有两种方法:(1)发送http请求;(2)模拟http请求对象。
第一种方法需要配置回归环境,通过修改代码统计的策略来计算覆盖率;第二种方法是比较正规的思路。
引入相关jar
& lt; dependency> ,,,,,& lt; groupId> org.springframework.boot ,,,,,& lt; artifactId> spring-boot-starter-web ,,,& lt;/dependency> ,,,& lt; dependency> ,,,,,& lt; groupId> org.springframework.boot ,,,,,& lt; artifactId> spring-boot-starter-test ,,,,,& lt; scope> test ,,,& lt;/dependency>
项目使用的是springboot2.4.0。
spring-boot-starter-test中包含junit5和5相关jar。无需额外引入。
如果想使用junit4,可以将springboot版本降低,junit4与junit5在一些注解和方法上有区别,比如注解的引入目录不同,一些方法进行了优化,有兴趣可以查阅相关资料,这里就不再赘述。
下面代码是junit5使用样式。
项目目录结构如下
控制器类
@RestController @RequestMapping (“/api/v1") public class  UserController { @ autowired才能 UserService 才能;userService; @GetMapping才能(“用户/{userId}“) public 才能;User 说(@PathVariable (“userId"), Long id), { ,,,return userService.getUser (id); ,,} @PostMapping才能(“用户/edit") public 才能;User 编辑(@RequestBody User 用户),{ ,,,return userService.edit(用户); ,,} }
服务实现类
@ Service public class  UserServiceImpl implements UserService  { @ autowired才能 UserDao 才能;userDao; @Override才能 public 才能;User  getUser (Long id), { ,,,return userDao.getUser (id); ,,} @Override才能 public 才能;User 编辑(User 用户),{ ,,,return userDao.edit(用户); ,,} }
刀接口
public interface UserDao { User 才能getUser (Long id); User 才能编辑(User 用户); }
用户类
public class User { private 才能Long id; private 才能;String 名称;,,private String desc; ,,get()……,,设置()……,,toString ()…… null null null null怎么利用5与Springboot对应用进行测试