摘要:当面讲给你听讲堂地址,或许是最实用的教程,新课促销中,只要你敢来,保你收货满满。优惠报名全程撸码快速入门教程全原价,优惠价全程撸码进阶全原价,优惠价
回顾
Spring Boot - 初识 Hello World
Spring Boot - Servlet、过滤器、监听器、拦截器
Spring Boot - 静态资源处理、启动加载、日志处理
Spring Boot - 部署Deploy
Spring Boot - 整合jsp后必须通过spring-boot:run方式启动?
Spring Boot - 为什么整合jsp后必须通过spring-boot:run方式启动?
Spring Boot - 自定义启动banner
Spring Boot - 表单校验(JSR303&Hibernate Validator)
为什么要做单元测试?现状不知道怎么编写单元测试
项目没有要求,所以不编写
单元测试价值不高,完全是浪费时间
业务逻辑比较简单,不值得编写单元测试
不管怎样,集成测试将会抓住所有的 bug,用不着进行单元测试
在项目的前期还是尽量去编写单元测试,但是越到项目的后期就越失控
为了完成编码任务,没有足够的时间编写单元测试
工具(一):Junit4
注解的使用
@Test
@Before @After
@BeforeClass @AfterClass
工具(二):spring-boot-starter-test
注解的使用
@RunWith(SpringRunner.class)
@SpringBootTest
断言:对结果进行验证
Assert
模拟HTTP环境
注解:@AutoConfigureMockMvc
工具类:MockMvc(3步)
perform:执行一个RequestBuilder请求,会自动执行SpringMVC的流程并映射到相应的控制器执行处理;
MockMvcRequestBuilders提供了get/post/put/delete/upload等http请求的方式
提供了header/contentType/cookie/characterEncoding/params等设置request参数的方式
ResultActions
andExpect:添加ResultMatcher验证规则,验证控制器执行完成后结果是否正确;
andDo:添加ResultHandler结果处理器,比如调试时打印结果到控制台;
andReturn:最后返回相应的MvcResult;然后进行自定义验证/进行下一步的异步处理;
MvcResult(自定义Assert)
getModelAndView:获得控制层设置的ModeAndView对象
getResponse:获得最终响应结果
工具(三):Mockito
打桩:实际上就是对接口、类、方法、参数、返回值进行伪造或者模拟。
ReflectionTestUtils
注解的使用
@Mock:真实对象的替代品
@Spy:被测试对象需要一部分被执行、一部分被mock,需要用spy对目标对象进行包装
thenReturn与doReturn差异
语法:
when-thenReturn
when(obj.method()).thenReturn(returnValue)
doReturn-when
doReturn(returnValue).when(obj).method()
差异
API | Mock Obj | Spy Obj |
---|---|---|
when-thenReturn | × | ○ |
doReturn-when | × | × |
本文详细的讲解了Junit,Mockito,以及spring boot的测试工具,相信各位看官老爷一定还想了解更多详细内容和使用技巧。
??当面讲给你听?? 讲堂地址,或许是最实用的教程,新课促销中,只要你敢来,保你收货满满?。
优惠报名 【全程撸码】Spring Boot 1.5 快速入门教程(全)(原价:文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/67731.html
摘要:单元测试因为公司单元测试覆盖率需要达到,所以进行单元测试用例编写。测试的时候可以把每个判断分支都走到。同这句代码,可以通过如此一个对象,使用以上方法基本上可以编写所有代码的测试类。编写测试一定程度上可以发现代码错误,可以借此重构代码。 3.springboot单元测试因为公司单元测试覆盖率需要达到80%,所以进行单元测试用例编写。多模块项目的因为会经常调用其他服务,而且避免数据库操作对...
摘要:但是,一个好的单元测试应该是毫秒级的,否则这会影响的工作方式,这也就是测试驱动开发的思想。在单元测试中,我们可以像这样来构建一个实例。所以,我们在写单元测试的时候,应该以一种更简单的方式去构建。 本文翻译自:https://reflectoring.io/unit-...原文作者:Tom Hombergs 译文原地址:https://weyunx.com/2019/02/04... ...
摘要:在类里,本地类里用关键字声明过的方法,在单元测试启动后会自动被调用到。在及的设定思路里,放在路径下面以结尾的类会被当成单元测试类处理。 ABAP 在ABAP类里,本地类(Local Class)里用关键字FOR TESTING声明过的方法,showImg(https://segmentfault.com/img/remote/1460000016898407); 在单元测试启动后会自动...
摘要:例子使用源代码我们先给了一个的实现然后又规定了方法的返回值。源代码也就是说,得益于,我们能够很方便地对依赖关系中任意层级的任意做。 Github地址 Mock测试技术能够避免你为了测试一个方法,却需要自行构建整个依赖关系的工作,并且能够让你专注于当前被测试对象的逻辑,而不是其依赖的其他对象的逻辑。 举例来说,比如你需要测试Foo.methodA,而这个方法依赖了Bar.methodB,...
摘要:框架是和应用程序的另一个测试和规范框架。它是为应用程序编写自动测试的最有用的库之一。数据库是许多应用程序包括核心和应用程序不可分割的一部分,可能是进行单元测试时的最大障碍。 作为一名Java开发人员,我们从事不同的领域,从编写核心Java代码到创建JSP页面、编写RESTAPI,有时甚至创建Groovy脚本以实现构建自动化...
阅读 2047·2023-04-25 22:58
阅读 1367·2021-09-22 15:20
阅读 2624·2019-08-30 15:56
阅读 1930·2019-08-30 15:54
阅读 2040·2019-08-29 12:31
阅读 2681·2019-08-26 13:37
阅读 549·2019-08-26 13:25
阅读 2037·2019-08-26 11:58