Spring boot之单元测试

本文介绍如何使用SpringBoot框架进行单元测试,包括Service层及Controller层的测试方法。重点介绍了测试环境搭建、测试代码编写及常见错误排查。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        在写工程代码的时候,经常需要调试自己的方法、接口是否有问题,能否正常调用,尤其多人合作开发项目时,工同程的融合,每个接口的问题都将导致工程不能正常运行。

       对于Spring boot程序,框架对测试提供了很好的支持,这里简单总结一下测试方法。这里的单元测试主要包括Service的测试和API的测试(即Controller的测试)。

一、Service的测试

        Service主要负责执行具体的业务逻辑的处理,打开一个Service代码(这里在之前的项目中打开StudentService.java文件,新建一个通过学号查询学生信息的方法,然后测试该方法,具体实现如下):


        然后在工程目录的test文件夹下建立对应的测试程序StudentServiceTest.java,这里需要加入两个注解:@RunWith(SpringRunner.class)表示测试环境,以及@SpringBootTest表示启动整个应用程序,然后注入StudentService,在具体的测试方法前加上@Test注解即可:


        然后直接右键运行该测试程序,或者双击该测试方法->右键运行该测试方法,如果有错误,会具体指出错误的地方,如下图所示,如果没有问题则会说明测试成功(我这里学号为20110002的学生的name为Test,在测试程序中断言其为Test11,所以报错):


============================================================================

        或许上面的步骤,你觉得麻烦,那么正好,IDEA给我们提供了自动生成的功能:在需要测试的方法上双击选中->右键Go To->Test->Create Test Method,则会自动在test下生成service目录,并在service目录下生成框架代码,然后与直接添加测试逻辑代码即可。


二、Controller的测试,即API的测试

        Controller里面主要负责访问请求的处理,即为外部提供访问接口。按照上述步骤生成测试框架代码,然后按照请求路径,测试路径、逻辑是否都正确,这里引入@AutoConfigureMockMvc注解进行具体的逻辑测试。这里以Get方法请求“/students”路径下的方法(即查询学生信息):


以上是单个方法或接口的测试,如果想同时测试多个接口,那么Maven也为我们提供了很好的可视化操作,如下图所示。然后每次重新整理工程依赖、打包什么的直接点击运行即可,在测试有问题的地方,跟上面一样会具体指出哪里有错误。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值