SpringBoot 单元测试用例怎么写

本文介绍了在SpringBoot项目中如何编写单元测试用例,包括引入测试依赖、使用@SpringBootTest注解定位测试位置以及注意事项,重点展示了如何对接口进行效率测试和日志调试。
摘要由CSDN通过智能技术生成

SpringBoot 单元测试用例写法

前言:
技术评审说,我们平时写功能接口时候,需要自己本地测试下,常见的postman,apipost…都可以测试下。简单说就是平时写功能接口,本地要写单元测试。这一听来活了,简单粗暴上代码。

步骤:

1、需要引入springboot-test相关的测试依赖

<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
      <exclusions>
         <exclusion>
            <groupId>org.junit.vintage</groupId>
            <artifactId>junit-vintage-engine</artifactId>
         </exclusion>
      </exclusions>
</dependency>

2、代码书写位置编写相关的代码

在这里插入图片描述
3、编写相关的测试用例代码
需要添加@SpringBootTest注解
当时想法是,针对现有接口做个调试,顺便做个压力测试,压力测试代码再下一篇文章,10万数据量看看多久能写入到数据库…。

package com..xx.xx.controxxr.callback;


import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.ArrayList;
import java.util.List;

@SpringBootTest
public class CallBackControllerTest {

    @Autowired
    private CallBackController callBackController;

    /**
     * 测试xxx接收效率
     */
    @Test
    public void listNetWorkInspectionObjectTest() {
        JointlyxxorkxxctionObject inspectionObject = new JointlyxxorkxxctionObject();
        List<JoinxxNetworxxxObject> dataList = new ArrayList<>();
        for (int i = 0; i < 100000; i++) {
            JoinxxNetworxxxObject object = new JoinxxNetworxxxObject();
            // 编写相关的参数 
            ...
            dataList.add(object);
        }
        inspectionObject.setDataList(dataList);
        // 此位置是调用callBackController有的方法
        callBackController.listxxworkxxInspection(inspectionObject);
    }
}

CallBackController 现有发方法:

    /**
     * xx-aaccxx清单接口
     */
    @PostMapping("/xx/aa/dd/cc")
    @ApiOperation("xx-aaccxx清单接口")
    public void listxxworkxxInspection(@RequestBody JointlyxxorkxxctionObject jointlyxxorkxxctionObject) {
        log.info("xx-x清单接口x每日推送数据......开始......");
        callBackService.callBackxxaakxxspection(jointlyxxorkxxctionObject);
        log.info("xx-x清单接口x每日推送数据......结束......");
    }

注意事项:
1,依赖不要引入错了
2,写测试用例代码的位置,不用本地起服务直接在test用例包直接调用即可
3,如果调试接口的话需要打印日志,用于排查问题。

喜欢我的文章的话,麻烦点个阅读或者点个点赞,是我编写博客的动力

Spring Boot中,你可以使用JUnit或者Spring Boot提供的测试框架来编单元测试用例。下面是一个使用JUnit编Spring Boot单元测试的示例: 首先,确保在你的项目中包含了JUnit依赖,例如在Maven中的`pom.xml`文件中添加以下依赖: ```xml <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <scope>test</scope> </dependency> ``` 然后,创建一个测试类,例如`MyServiceTest`,在这个类中编测试方法: ```java import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest public class MyServiceTest { @Test public void testSomething() { // 编测试逻辑 // 断言结果是否符合预期 } } ``` 在这个示例中,我们使用`@SpringBootTest`注解标记测试类,以便启用Spring Boot的上下文环境。然后,在测试方法`testSomething()`中,你可以编你的测试逻辑,并使用断言来验证结果是否符合预期。 你还可以使用其他JUnit提供的注解和断言来完善你的单元测试,比如`@BeforeEach`、`@AfterEach`、`assertEquals()`等。 除了JUnit,Spring Boot还提供了一些额外的测试框架和注解,如`@MockBean`、`@WebMvcTest`、`@DataJpaTest`等,用于更方便地编各种类型的单元测试。你可以根据具体的需求选择合适的测试框架和注解。 希望这个简单的示例能帮助你开始编Spring Boot单元测试用例。如果有任何疑问,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值