Swagger基本使用与RestTemplate发送http接口测试

简介: Swagger基本使用与RestTemplate发送http接口测试

Swagger


  • 导入依赖
      <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <!--swagger ui-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.9.2</version>
        </dependency>
  • 配置文件SwaggerConfig.java
/**
 * @Author Tiam
 * @Date 2021/12/10 13:48
 * @Description: Swagger配置类
 */
@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    public Docket webApiConfig() {
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("webApi")
                .apiInfo(webApiInfo())
                .select()
                // 指定controller包
                .apis(RequestHandlerSelectors.basePackage("com.example"))
                // 所有controller
                //.paths(PathSelectors.any())  会带有基础错误控制类
                .build();
    }

    private ApiInfo webApiInfo() {
        return new ApiInfoBuilder()
                .title("Swagger2-测试API文档")
                //文档作用描述
                .description("本文档对平时的一些接口进行测试")
                .version("1.0")
                //Swagger地址
                .termsOfServiceUrl("http://localhost:8080/swagger-ui.html")
                //作者名,链接地址,联系方式
                .contact(new Contact("Tiam", "http://www.yujing.fit/", "3036293856@qq.com"))
                .build();
    }
}


.paths(PathSelectors.any()) 效果


POJO类

 @ApiModelProperty(value ="ID")
    private Integer id;
    @ApiModelProperty(value ="年龄")
    private Integer age;
    @ApiModelProperty(value ="姓名")
    private String name;
    @ApiModelProperty(value ="创建日期")
    private Date createDate;


控制类

/**
 * @Author Tiam
 * @Date 2021/12/9 13:55
 * @Description:
 */
@Api(tags = "User控制类")
@RestController
@Slf4j
public class UserController {
    @Autowired
    private UserService userService;

    @ApiOperation(value = "根据姓名查询", notes = "备注:更详细的说明")
    @ApiImplicitParam(name = "name", value = "姓名", paramType = "path")
    @GetMapping("/findUserByName/name/{name}")
    public List<User> findUserByName(@PathVariable("name") String name) {
        log.info("您输入的姓名是:",name);
        return userService.select(name);
    }
}


RestTemplate类使用


配置类RestemplateConfig

/**
 * @Author Tiam
 * @Date 2021/12/6 10:52
 * @Description: RestTemplate配置类
 */
@Configuration
public class RestemplateConfig {
    /**
     * 调用其他服务的接口
     * @return
     */
    @Bean
    public RestTemplate getRestTemplate(){
        return new RestTemplate();
    }
}


控制类

/**
 * @Author Tiam
 * @Date 2021/12/10 11:10
 * @Description: http接口请求调用测试
 */
@Api(tags = "http请求控制类")
@RestController
@Slf4j
public class HttpController {
    public static final String URL = "http://apis.juhe.cn/fapig/sudoku/generate?key=34f37a2e3ebb4b7133b54264a44c6596&difficulty=";
    @Resource
    private RestTemplate restTemplate;

    /**
     * 获取数独游戏模型
     *
     * @param difficulty 难度级别, easy(简单)、normal(普通)、hard(困难)、veryhard(非常困难); 默认easy
     * @return
     */
    @ApiOperation(value = "数独", notes = "数独游戏模型获取")
    @ApiImplicitParam(name = "difficulty"
            , value = "难度级别, easy(简单)、normal(普通)、hard(困难)、veryhard(非常困难); 默认easy"
            , paramType = "query"  //参数位置说明
            , defaultValue = "easy" //默认值
            ,required = false
            //,example = "easy(简单)、normal(普通)、hard(困难)、veryhard(非常困难); 默认easy"
    )
    @GetMapping(value = {"/getSudoku/dif"})
    public Object getSudoku(@RequestParam(required = false)String difficulty) {
        log.info("转发链接:{}", URL + difficulty);
        //get请求 , url地址 , 返回数据类型
        return restTemplate.getForObject(URL + difficulty, Object.class);
    }
}


测试演示


参考文章


https://blog.csdn.net/jinjiniao1/article/details/100849237

https://blog.csdn.net/itguangit/article/details/78825505

相关文章
|
2月前
|
监控 测试技术 Go
告别传统Log追踪!GOAT如何用HTTP接口重塑代码监控
本文介绍了GOAT(Golang Application Tracing)工具的使用方法,通过一个Echo问答服务实例,详细展示了代码埋点与追踪技术的应用。内容涵盖初始化配置、自动埋点、手动调整埋点、数据监控及清理埋点等核心功能。GOAT适用于灰度发布、功能验证、性能分析、Bug排查和代码重构等场景,助力Go项目质量保障与平稳发布。工具以轻量高效的特点,为开发团队提供数据支持,优化决策流程。
284 89
|
11天前
|
Java 测试技术 容器
Jmeter工具使用:HTTP接口性能测试实战
希望这篇文章能够帮助你初步理解如何使用JMeter进行HTTP接口性能测试,有兴趣的话,你可以研究更多关于JMeter的内容。记住,只有理解并掌握了这些工具,你才能充分利用它们发挥其应有的价值。+
184 23
|
2月前
|
Linux C语言 iOS开发
C语言结合AWTK开发HTTP接口访问界面
这样,我们就实现了在C语言中使用libcurl和AWTK来访问HTTP接口并在界面上显示结果。这只是一个基础的示例,你可以根据需要添加更多的功能和优化。例如,你可以添加错误处理机制、支持更多HTTP方法(如POST、PUT等)、优化用户界面等。
263 82
|
5月前
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
3月前
|
JSON API 网络架构
HTTP常见的请求方法、响应状态码、接口规范介绍
本文详细介绍了HTTP常见的请求方法、响应状态码和接口规范。通过理解和掌握这些内容,开发者可以更好地设计和实现W
572 83
|
2月前
|
SQL 安全 测试技术
2025接口测试全攻略:高并发、安全防护与六大工具实战指南
本文探讨高并发稳定性验证、安全防护实战及六大工具(Postman、RunnerGo、Apipost、JMeter、SoapUI、Fiddler)选型指南,助力构建未来接口测试体系。接口测试旨在验证数据传输、参数合法性、错误处理能力及性能安全性,其重要性体现在早期发现问题、保障系统稳定和支撑持续集成。常用方法包括功能、性能、安全性及兼容性测试,典型场景涵盖前后端分离开发、第三方服务集成与数据一致性检查。选择合适的工具需综合考虑需求与团队协作等因素。
235 24
|
2月前
|
XML 网络协议 程序员
Apipost接口调试全解:从HTTP到gRPC,程序员必备的“协议生存指南
Apipost是一款强大的接口调试工具,支持多种主流API协议。它涵盖HTTP/HTTPS、WebSocket、Socket.IO、gRPC、GraphQL、TCP及ISO8583金融报文等冷门协议。通过Body多样化、全局参数配置、性能分析等功能优化HTTP调试;提供WebSocket多消息存档与事件监听;gRPC支持服务反射和流式调试;GraphQL可自动生成Schema;TCP报文模板专业精准;SSE配置简单。此外,Apipost还具备环境变量、脚本加持和文档生成功能,是提升开发效率的全能工具。
|
2月前
|
SQL 测试技术
除了postman还有什么接口测试工具
最好还是使用国内的接口测试软件,其实国内替换postman的软件有很多,这里我推荐使用yunedit-post这款接口测试工具来代替postman,因为它除了接口测试功能外,在动态参数的支持、后置处理执行sql语句等支持方面做得比较好。而且还有接口分享功能,可以生成接口文档给团队在线浏览。
140 2
|
4月前
|
JSON 前端开发 测试技术
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
173 10
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
|
4月前
|
JSON 前端开发 API
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
150 5
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
下一篇
oss创建bucket