spring boot进行单元测试(springboot如何写单元测试)

技术Spring Boot如何做单元测试本篇内容介绍了“Spring Boot如何做单元测试”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅

本文介绍了“如何在Spring Boot做单元测试”的知识。很多人在实际案例的操作中会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

1.什么是Spring Boot?

Spring Boot是Pivotal团队提供的全新框架,旨在简化新Spring应用程序的初始构建和开发过程。该框架使用特定的方式进行配置,因此开发人员不再需要定义模板化的配置。简单地说,Spring Boot实际上不是一个新的框架。它默认配置了很多框架,就像maven集成了所有jar包,Spring Boot集成了所有框架一样。

第二,为什么要用Spring Boot?

其实只有一个原因。优雅、清晰、简洁胜过笨拙、模糊、复杂,这才是Spring Boot的核心竞争力!

三.快速入门攻略

(一)微型建筑项目

1.参观http://start.spring.io/

2.选择Maven项目、Spring Boot 1 . 3 . 6版本和一些基本工程信息,然后单击“切换到完整版本”java版本1.7。

3.单击“生成项目”下载项目压缩包。

4.解压后,使用eclipse,导入-现有maven项目-下一步-选择解压后的文件夹-Finsh,OK搞定!

(二)项目结构介绍

一般来说,Spring Boot的基础设施包括三个文件:

Src/main/java程序开发和主程序入口

src/主/资源配置文件

src/测试/java测试程序

此外,spingboot建议的目录结果如下:

根包结构:com.example.myproject

com

-例子

-我的项目

Application.java

|

-领域

|-Customer.java

|-CustomerRepository.java

|

-服务

|-CustomerService.java

|

-控制器

|-CustomerController.java

|

1.Application.java建议将其放在以下目录下,主要用于一些框架配置。

2.域目录主要用于实体和数据访问层(Repository)。

3.服务层主要是业务类代码。

4.控制器负责页面访问控制。

使用默认配置可以节省很多配置,当然也可以根据自己的喜好进行更改。

最后,启动Application主方法,一个java项目已经构建好了!

(三)网络模块的引入

1.将支持web的模块添加到pom.xml:

属国

groupIdorg.springframework.boot/groupId

artifactIdspring-boot-starter-web/artifactId

/依赖性

默认情况下,pom.xml文件中有两个模块:

Spring-boot-starter:核心模块,包括自动配置支持、log和YAML;

Spring-boot-starter-test:测试模块,包括JUnit、Hamcrest和Mockito。

2.编写控制器内容:

@RestController

公共类HelloWorldController {

@ RequestMapping(“/hello”)

公共字符串索引(){ 0

回归《你好世界》;

}

}

@Restcontroller意味着控制器中的所有方法都是以json格式输出的,所以不需要写任何jackjson配置的东西!

3.启动主程序,打开浏览器,访问http://localhost:8080/hello,即可看到效果。就这样!

(四)如何做单元测试

打开src/test/下的测试条目,写一个简单的http请求进行测试;使用mockmvc,使用

MockMvcResultHandlers.print()打印出执行结果。

@ RunWith(springjunit 4 class runner . class)

@ SpringApplicationConfiguration(class=mockservletcontext . class)

@WebAppConfiguration

公共类HelloWorldControlerTests {

私有MockMvc mvc

@以前

public void setUp()引发异常{

MVC=mock mvcbuilders . standalonesetup(new HelloWorldController())。build();

}

@测试

public void getHello()引发异常{

MVC . perform(MockMVCrequestBuilders . get('/hello ')。接受(MediaType。APPLICATION_JSON))。andExpect(mockmvrcresultmatchers . status()。isOk())。andDo(mockmvrcresulthandlers . print())。andReturn();

}

}

(5)开发环境的调试

热启动在正常的开发项目中已经很常见了,虽然平时在开发web项目的过程中,更改项目的启动和重启总是会给出一个错误;但是,springBoot非常支持调试,修改后可以实时生效。需要添加以下配置:

属国

属国

groupIdorg.springframework.boot/groupId

artifactIdspring-boot-devtools/artifactId

可选用户/可选用户

/依赖性

/依赖项

建设

插件

插件

groupIdorg.springframework.boot/groupId

artifactIdspring-boot-maven-plugin/artifactId

配置

叉子/叉子

/配置

/插件

/plugins

/build

在完整的打包环境中运行时,该模块将被禁用。如果您用java -jar或特定的类加载器启动应用程序,它会认为这是一个“生产环境”。

这里介绍“如何在Spring Boot做单元测试”的内容。感谢您的阅读。如果你想了解更多的行业,可以关注网站。边肖将为您输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/156536.html

(0)

相关推荐

  • Nginx $remoteaddr和$proxyaddxforwardedfor变量详解

    技术Nginx $remoteaddr和$proxyaddxforwardedfor变量详解 Nginx $remote_addr和$proxy_add_x_forwarded_for变量详解$re

    礼包 2021年11月5日
  • 应针对seo搜索引擎工作原理应该进行的优化有哪些

    技术应针对seo搜索引擎工作原理应该进行的优化有哪些今天就跟大家聊聊有关应针对seo搜索引擎工作原理应该进行的优化有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收

    攻略 2021年12月3日
  • mysql中自增id的示例分析

    技术mysql中自增id的示例分析这篇文章主要介绍了mysql中自增id的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。对于auto_increm

    攻略 2021年11月6日
  • mysql的or语法有什么作用

    技术mysql的or语法有什么作用这篇文章主要讲解了“mysql的or语法有什么作用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql的or语法有什么作用”吧!

    攻略 2021年11月26日
  • Dojo Build有什么用

    技术Dojo Build有什么用小编给大家分享一下Dojo Build有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Dojo 提供了一

    攻略 2021年10月19日
  • Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的

    技术Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的这篇文章主要介绍Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的

    攻略 2021年12月11日