我是靠谱客的博主 无奈香氛,最近开发中收集的这篇文章主要介绍3整合swagger进行接口测试整合swagger进行接口测试,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

整合swagger进行接口测试

1.生成在线接口文档

2.方便接口测试

这里创建公共模块 ,整合swagge,为了所有模块都能进行使用。

配置Swagger2

1、创建common模块

在guli-parent下创建模块common

配置:

groupId:com.atguigu

artifactId:common

2、在common中引入相关依赖

在这里插入图片描述

导入依赖,删除src目录

 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <scope>provided </scope>
        </dependency>
        <!--mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <scope>provided </scope>
        </dependency>
        <!--lombok用来简化实体类:需要安装lombok插件-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <scope>provided </scope>
        </dependency>
        <!--swagger-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <scope>provided </scope>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <scope>provided </scope>
        </dependency>
        <!-- redis -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <!-- spring2.X集成redis所需common-pool2
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-pool2</artifactId>
            <version>2.6.0</version>
        </dependency>-->
    </dependencies>

2、在common下面创建子模块service_base

在模块service_base中,创建swagger的配置

创建包com.atguigu.servicebase.config

创建类SwaggerConfig

这里面的内容是固定结构!

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    public Docket webApiConfig(){
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("webApi")
                .apiInfo(webApiInfo())
                .select()
                //默认admin,error路径不显示
                .paths(Predicates.not(PathSelectors.regex("/admin/.*")))
                .paths(Predicates.not(PathSelectors.regex("/error.*")))
                .build();
    }
    
    private ApiInfo webApiInfo(){
        return new ApiInfoBuilder()
                .title("网站-课程中心API文档")
                .description("本文档描述了课程中心微服务接口定义")
                .version("1.0")
                .contact(new Contact("xiaozhang", "http://coderxiaozhang.com", "1648996695@qq.com"))
                .build();
    }
}

3、在模块service模块中引入service-base

在这里插入图片描述

<dependency>
    <groupId>com.???</groupId>
    <artifactId>service-base</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

4、在service-edu启动类上添加注解,进行测试

springboot默认包扫描从外往里面扫,我们要把swagger配置类扫描到,加上@ComponentScan注解,配置包扫描规则

在这里插入图片描述

注意:依赖配置一下,还得配置包扫描

完事我们进行测试,swgger访问地址:http://localhost:8001/swagger-ui.html

这个地址是固定的。

在这里插入图片描述

比如查询全部,直接点try it out !

4、定义接口说明和参数说明

加一些中文注解,让我们的接口更加清晰,方便我们测试

定义在类上:@Api

ccontroller类

定义在方法上:@ApiOperation

定义在参数上:@ApiParam

@Api(description="讲师管理")
@RestController
@RequestMapping("/admin/edu/teacher")
public class TeacherAdminController {

	@Autowired
	private TeacherService teacherService;
	
	@ApiOperation(value = "所有讲师列表")
	@GetMapping
	public List<Teacher> list(){
		return teacherService.list(null);
	}
	
	@ApiOperation(value = "根据ID删除讲师")
	@DeleteMapping("{id}")
	public boolean removeById(
			@ApiParam(name = "id", value = "讲师ID", required = true)
			@PathVariable String id){
		return teacherService.removeById(id);
	}
}

在这里插入图片描述
在这里插入图片描述

到这里要注意之前的一些小细节,铁铁!

正常来说不会出现问题,出现问题找时间慢慢做一做。

最后

以上就是无奈香氛为你收集整理的3整合swagger进行接口测试整合swagger进行接口测试的全部内容,希望文章能够帮你解决3整合swagger进行接口测试整合swagger进行接口测试所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部