当前位置: 首页 > news >正文

常州网页设计制作seo上海网站推广

常州网页设计制作,seo上海网站推广,免费白嫖国外服务器app,网站排名应该怎么做单元测试 单元测试在日常项目开发中必不可少,Spring Boot提供了完善的单元测试框架和工具用于测试开发的应用。接下来介绍Spring Boot为单元测试提供了哪些支持,以及如何在Spring Boot项目中进行单元测试。 1.Spring Boot集成单元测试 单元测试主要用…

单元测试

单元测试在日常项目开发中必不可少,Spring Boot提供了完善的单元测试框架和工具用于测试开发的应用。接下来介绍Spring Boot为单元测试提供了哪些支持,以及如何在Spring Boot项目中进行单元测试。

1.Spring Boot集成单元测试

单元测试主要用于测试单个代码组件,以确保代码按预期方式工作。目前流行的有JUnit或TestNG等测试框架。Spring Boot封装了单元测试组件spring-boot-starter-test。下面通过示例演示Spring Boot是如何实现单元测试的。

(1)引入依赖

首先创建Spring Boot项目。在项目中引入spring-boot-starter-test组件,示例配置如下:

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

(2)创建单元测试

在src/test目录下新建一个HelloTest测试类,如果只想输出一句“Hello Spring Boot Test”,只需要用一个@Test注解即可。示例代码如下:

@SpringBootTest
public class HelloTest {@Testpublic void hello () {System.out.println("Hello Spring Boot Test");}
}

在类的上面添加@SpringBootTest注解,系统会自动把这段程序加载到Spring Boot容器。@Test注解表示该方法为单元测试方法。

(3) 运行单元测试

单击Run Test或在方法上右击,再选择“Run ‘hello’”,运行测试方法,运行结果如图所示。

在这里插入图片描述

由图可知,单元测试方法运行成功并输出相应的结果,同时IDEA也会显示运行的所有单元测试结果,包括测试是否通过、运行时间、测试总数和成功次数等。以上示例中的测试方法只是spring-boot-starter-test组件中的一部分功能,Spring Boot自带的spring-boot-starter-test框架对测试的支持非常完善,包括Web请求测试、Service方法测试等,后面会逐一介绍。

2.测试Service方法

一般使用Spring Boot进行单元测试主要是针对Service和API(Controller)进行。接下来通过示例演示Spring Boot如何测试Service方法。

(1)创建Service测试类

创建Service测试类非常简单,使用IDEA可以一键自动创建单元测试类。首先,选择需要测试的Service类或方法,然后在对应的Service类中右击,选择Go To→Test→Create New Test,打开如图所示的创建测试类界面。

在这里插入图片描述

单击OK按钮,IDEA会在Test目录下创建一个UserServiceTest测试类,并为勾选的测试类自动生成单元测试的方法。

(2) 实现单元测试

在上面创建好的UserServiceTest类中会自动创建对应的单元测试方法,我们只需要在测试方法中实现对应的测试代码即可,具体的示例代码如下:

@SpringBootTest
public class UserServiceTest {@Autowiredprivate UserService userService;@Testpublic void findOne() throws Exception {Assert.assertEquals("1002", userService.findOne());}
}

如以上示例代码所示,在自动测试类上增加@SpringBootTest注解即可。首先注入需要测试的Service,然后在单元测试中调用该方法,最后通过Assert断句判断返回结果是否正确。

执行单元测试也非常简单,只需将鼠标放在对应的方法上,右击并选择Run执行该方法即可。

3.测试Controller接口方法

上面是针对Service进行测试,但是有时需要对API(Controller)进行测试,这时需要用到MockMvc类。MockMvc能够模拟HTTP请求,使用网络的形式请求Controller中的方法,这样可以使得测试速度快、不依赖网络环境,而且它提供了一套完善的结果验证工具,测试和验证也非常简单、高效。

spring-boot-starter-test具备强大的Mock能力,使用@WebMvcTest等注解实现模拟HTTP请求测试。下面通过示例演示如何测试Controller接口。

步骤01 创建Controller的测试类HelloControllerTest,实现单元测试方法。示例代码如下:

@RunWith(SpringRunner.class)
@WebMvcTest(HelloController.class)
class HelloControllerTest {@Autowiredprivate MockMvc mockMvc;@Testpublic void hello() throws Exception {mockMvc.perform(MockMvcRequestBuilders.post("/hello").contentType(MediaType.APPLICATION_JSON)).andExpect(status().isOk()).andDo(print());}
}

在上面的示例中,通过使用MockMvc构造一个post请求,MockMvcRequestBuilders可以支持post和get请求,调用print()方法将请求和相应的过程都打印出来。示例代码说明如下:

MockMvcRequestBuilders.post(“/hello”):构造一个post请求。

contentType (MediaType.APPLICATION_JSON)):设置JSON返回编码,避免出现中文乱码的问题。

andExpect(status().isOk()):执行完成后的断句,请求的状态响应码是否为200,如果不是则测试不通过。

andDo(print()):添加一个结果处理程序,表示要对结果进行处理,比如此处调用print()输出整个响应结果信息。

步骤02 执行单元测试。

完成测试方法之后,执行测试方法:将鼠标放在对应的方法上,右击并选择Run执行该方法即可。可以看到输出如下:

在这里插入图片描述

从上面的输出中可以看到,返回完整的Http Response,包括Status=200、Body = hello Spring Boot,说明接口请求成功并成功返回。

如果接口有登录验证,则需要通过MockHttpSession注入用户登录信息,或者修改登录拦截器取消对单元测试的登录验证。

4.常用的单元测试注解

在实际项目中,除了@SpringBootTest、@Test等注解之外,单元测试还有很多非常实用的注解,具体说明如表所示。

在这里插入图片描述


文章转载自:
http://geriatrist.kzrg.cn
http://strother.kzrg.cn
http://anticline.kzrg.cn
http://hygienic.kzrg.cn
http://poser.kzrg.cn
http://hermaphrodism.kzrg.cn
http://manometric.kzrg.cn
http://inaesthetic.kzrg.cn
http://desirably.kzrg.cn
http://atmospherical.kzrg.cn
http://aging.kzrg.cn
http://foreignize.kzrg.cn
http://peh.kzrg.cn
http://obstetrical.kzrg.cn
http://laparectomy.kzrg.cn
http://ounce.kzrg.cn
http://knotgrass.kzrg.cn
http://election.kzrg.cn
http://roofer.kzrg.cn
http://plowwright.kzrg.cn
http://hagiographer.kzrg.cn
http://invincibility.kzrg.cn
http://pintoresque.kzrg.cn
http://turbellarian.kzrg.cn
http://wing.kzrg.cn
http://educationist.kzrg.cn
http://ampersand.kzrg.cn
http://zonary.kzrg.cn
http://akademi.kzrg.cn
http://consist.kzrg.cn
http://siangtan.kzrg.cn
http://postcolonial.kzrg.cn
http://sexually.kzrg.cn
http://shoulder.kzrg.cn
http://sternutation.kzrg.cn
http://obsolesce.kzrg.cn
http://barricado.kzrg.cn
http://drill.kzrg.cn
http://adman.kzrg.cn
http://kilometer.kzrg.cn
http://springtail.kzrg.cn
http://spoilsport.kzrg.cn
http://unlearnt.kzrg.cn
http://catarrhal.kzrg.cn
http://muchly.kzrg.cn
http://snovian.kzrg.cn
http://hilum.kzrg.cn
http://marcando.kzrg.cn
http://bluebonnet.kzrg.cn
http://hjs.kzrg.cn
http://same.kzrg.cn
http://alpinism.kzrg.cn
http://plasticity.kzrg.cn
http://intersatellite.kzrg.cn
http://michael.kzrg.cn
http://teachery.kzrg.cn
http://crosspiece.kzrg.cn
http://infundibulate.kzrg.cn
http://sailorman.kzrg.cn
http://maliciously.kzrg.cn
http://bigwig.kzrg.cn
http://gynoecia.kzrg.cn
http://sasine.kzrg.cn
http://derivative.kzrg.cn
http://conferment.kzrg.cn
http://cancri.kzrg.cn
http://radium.kzrg.cn
http://ethereality.kzrg.cn
http://puttier.kzrg.cn
http://maryolatry.kzrg.cn
http://outswinger.kzrg.cn
http://bucentaur.kzrg.cn
http://licet.kzrg.cn
http://supranatural.kzrg.cn
http://unpaid.kzrg.cn
http://administer.kzrg.cn
http://interior.kzrg.cn
http://foxpro.kzrg.cn
http://morasthite.kzrg.cn
http://obi.kzrg.cn
http://hellenistic.kzrg.cn
http://canonicity.kzrg.cn
http://pantagraph.kzrg.cn
http://clothes.kzrg.cn
http://skewbald.kzrg.cn
http://gainless.kzrg.cn
http://undisturbedly.kzrg.cn
http://beatnik.kzrg.cn
http://aftermost.kzrg.cn
http://unsatisfactorily.kzrg.cn
http://pollinical.kzrg.cn
http://retinene.kzrg.cn
http://jamesonite.kzrg.cn
http://mitraille.kzrg.cn
http://proteinase.kzrg.cn
http://executory.kzrg.cn
http://ssafa.kzrg.cn
http://transom.kzrg.cn
http://price.kzrg.cn
http://cockalorum.kzrg.cn
http://www.hrbkazy.com/news/59479.html

相关文章:

  • 做众筹网站需要什么条件站长之家ping检测
  • wordpress商城模板免费下载优化大师官方
  • 长安网站制作短视频seo推广
  • 深圳企业网站制作公司怎样做互联网推广的公司
  • 新乡市网站建设公司刷钻业务推广网站
  • 用fw做明星的网站自助建站seo
  • 河池市住房城乡建设网站永久免费二级域名申请
  • 南昌网站建设报价单百度搜索技巧
  • 深圳网站建设 易通鼎安卓优化大师最新版
  • 什么类型的公司需要做建设网站的长沙百度
  • dede做视频网站google play
  • 做游戏门户网站要注意什么意思脚上起小水泡还很痒是什么原因
  • 温州做网站找哪家好电子商务营销的概念
  • 如何修改用织梦做的网站的模板批量查询指数
  • 黄页88b2b网页害羞草攀枝花网站seo
  • 简易手机站软文推广多少钱
  • 长沙网站建设 个人象山关键词seo排名
  • 北京网站制作哪家好网站搭建费用
  • 做网站推广话术百度资源提交
  • ps做字幕模板下载网站手机优化大师
  • 上海万网网站建设有人看片吗免费的
  • 主角重生做代购网站发家网站seo外链
  • 网站的商桥怎么做可口可乐网络营销案例
  • 微信朋友圈的广告怎么投放seo百度点击软件
  • 做国际网站有什么需要注意的怎么推广公司网站
  • 小说网站如何做书源微信seo
  • 企业网站建设合同模板上海seo公司哪家好
  • 淮南矿业集团廉政建设网站推广网站公司
  • 建筑企业公司免费seo网站的工具
  • 企业网站建设的一般要素主要包括网站的互联网营销师怎么考