第一,单元测试基础
1、引入相关依赖
! - -测试依赖于--springboot程序,对于自动创建项目,缺省情况下添加--dependencygroupidorg.spring framework.boot/groupidartifactidspring--
@runwith(springrunner.class ) /用于底层的junitspringjunit4class runner @ springboottest ) classes={ xdclassaplication.clation }
package xdclass_springboot.demo; import junit.framework.TestCase; import net.xd class.demo.xdclassapplication; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; importorg.spring framework.boot.test.context.springboottest; importorg.spring framework.test.context.JUnit4. spring runner; /** *单元测试*///启动整个基础junitspringjunit4class runner @ run with (spring runner.class ) springboot项目, 如果不附加,就会出错@ springboottest (classes={ xdclassapplication.class } ) publicclassspringboottestdemo ) @test//注释pubbblicate //或//assert.assert equals (1,1 ); }成功:
失败:
第二,测试高级篇的MockMvc
MockMvc类的使用与仿真Http要求实战
1、添加类注释@ autoconfiguremockmvc @ springboottest (classes={ xdclassapplication.class } ) 2、相关的API perform:reququure 最后返回到相应的MVC结果响应消息mvving生成器主要有两种实现。 标准操作系统mvcbuilder和默认操作系统mvcbuilder分别支持两种测试方法。 这意味着独立安装和集成Web环境测试。 这种方法不是整合真正的Web环境,而是使用相应的Mock API进行模拟测试,不需要启动服务器。 直接使用静态工厂MockMvcBuilders创建即可。
代码:
package xdclass_springboot.demo; import net.xd class.demo.xdclassapplication; import org.junit.Test; import org.junit.runner.RunWith; importorg.spring framework.beans.factory.annotation.auto wired; importorg.spring framework.boot.test.auto configure.web.servlet.autoconfiguremockmvc; importorg.spring framework.boot.test.context.springboottest; importorg.spring framework.test.context.JUnit4. spring runner; importorg.spring框架. test.web.servlet.mock MVC; importorg.spring框架. test.web.servlet.MVC result; importorg.spring framework.test.web.servlet.request.mockmvcrequestbuilders; importorg.spring framework.test.web.servlet.result.mockmvcresultmatchers; /** *功能说明: mockmvc类*/@runwith(springrunner.class )//基础junitspringjunit 4类runner @ springboottest ) classes=整个spring boot项目@ autoconfiguremockmvcpubliccclassmockmvctestdemo @Test public void apiTest () throwsexception ) mvcresultmvcresult=mock MVC.perform ) mockmvcrequestbuilders.get )/test id int status=MVC result.getresponse ().getStatus ); system.out.println(Status; }成功: