接口测试工具——Postman测试工具 & Swagger接口测试+SpringBoot整合 & JMeter高并发测试工具

目录

IDEA简单测试


Postman测试工具


post请求

头部携带token

类型选择JSON

接口测试工具swagger

https://apifox.com/

swagger2,较多

swagger3,

Knife4j

Knife4j的前身是swagger-bootstrap=ui,前身swagger--bootstrap-ui是一个纯swagger--ui的ui皮肤项目

https://doc.xiaominfo.com/docs/quick-start

1.引入依赖

xml 复制代码
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-openapi2-spring-boot-starter</artifactId>
            <version>4.1.0</version>
        </dependency>

底层就是swagger

2.配置

yml 复制代码
knife4j:
  enable: true

3.常用注解

java 复制代码
import io.swagger.annotations.Api;
序号 注解 作用
1 @Api(tags = "图书的api接口类") 左侧名字
2 @ApiOperation("findPage方法测试") get方法名字
3 @ApiImplicitParam(name = "findByPage",value = "分页查询",required = true) 参数相关
4 @ApiModel("DTO返回数据") 写在HttpResp实体类上
5 @ApiModelProperty("time") 写在HttpResp类属性上

BookController.java文件

java 复制代码
package com.tinaju.bm.controller;

import com.tinaju.bm.dto.HttpResp;
import com.tinaju.bm.dto.ResultCode;
import com.tinaju.bm.entity.Book;
import com.tinaju.bm.service.IBookService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.Date;
import java.util.List;

@Api(tags = "图书的api接口类")
@RestController
@RequestMapping("/api/book")
public class BookController {
    @Autowired
    private IBookService bookService;

    @ApiOperation("findPage方法测试")
    @ApiImplicitParam(name = "findByPage",value = "分页查询",required = true)
    @GetMapping("/findByPage")
    public HttpResp findByPage(int currentPage){
        List<Book> bookList = bookService.findByPage(currentPage, 5);
        return HttpResp.results(ResultCode.BOOK_SUCCESS,new Date(),bookList);
    }
}

HttpResp.java返回给前端的实体类

java 复制代码
package com.tinaju.bm.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.io.Serializable;
import java.util.Date;

/**
 * 返回给前端的响应
 * @param <T>
 */
@ApiModel("DTO返回数据")
@Getter@Setter
@ToString
public class HttpResp<T> implements Serializable {

    private ResultCode resultCode;
    @ApiModelProperty("time")
    private Date time;
    @ApiModelProperty("results")
    private T results;

    private HttpResp(){}

    public static <T> HttpResp<T> results(ResultCode resultCode,Date time,T results){ // java泛型的写法
        HttpResp httpResp = new HttpResp();
        httpResp.setResultCode(resultCode);
        httpResp.setTime(time);
        httpResp.setResults(results);
        return httpResp;
    }
}

4.接口测试

ip: 端口/doc.html

JMeter

什么是JMeter?

Apache JMeter™

The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance(接口性能),It was originally designed for testing Web Applications but has since expanded to other test functions.

JMeter安装配置

1.官网下载

2.下载后解压

3.汉语设置

JMeter的使用方法

1.新建线程组

2.设置参数

3.添加取样器

4.设置参数:协议,ip,端口,请求方式,路径

5.添加查看结果树

6.启动+查看结果

相关推荐
流烟默8 小时前
SSE 实战:在 SpringBoot + Vue 项目中零依赖实现轻量级实时消息推送
vue.js·spring boot·后端·sse
ly76899 小时前
Spring Boot 集成 PostgreSQL 的连接池调优:HikariCP、prepared statement 与服务器资源边界
spring boot·postgresql·hikaricp·连接池调优
wangjialelele9 小时前
一文梳理 Spring Cloud 核心组件:Eureka、Nacos、OpenFeign、LoadBalancer 与 Gateway
java·spring boot·spring·spring cloud·微服务·nacos
七夜zippoe10 小时前
Spring Boot 接通义千问:从拿 Key 到第一个对话接口跑通(保姆级)
java·spring boot·后端
Nebula_g10 小时前
SpringBoot企业级实战项目—云禾外卖—SpringBoot常用注解解析
java·网络·数据库·spring boot·后端·spring·javase
企业数字化笔记11 小时前
租户停用后数据和任务怎么处理?冻结、恢复与保留策略的实现
android·java·spring boot
vx_Biye_Design11 小时前
PHP中医养生馆预约系统60841-计算机课程设计、毕业设计
vue.js·spring boot·后端·mysql·php·课程设计·express
程序员小孔.11 小时前
基于 SpringBoot + UniApp + Vue 的家政服务系统设计与实现
前端·数据库·spring boot·python·docker·微信小程序
鸽鸽程序猿11 小时前
【项目】【在线判题系统】公共功能
java·spring boot·maven
我是人✓21 小时前
SpringBoot项目的五种创建方式
java·spring boot·后端