JAVA开发常用测试工具

JAVA开发常用测试工具

单元测试junit

什么是junit

JUnit 是一个用于编写和运行单元测试的开源框架,是Java 开发中最常用的单元测试框架之一。它为 Java 开发者提供了一种简单、灵活且可扩展的方式来编写自动化测试代码,并帮助开发者进行单元测试的管理和执行。

JUnit 提供了一组注解和断言方法,使开发者能够方便地编写测试用例,并对被测试的代码进行断言和验证。开发者可以使用 JUnit 的注解来定义测试方法、测试套件和测试配置等。断言方法则用于验证预期结果与实际结果是否一致。

通过 JUnit,开发者可以在开发过程中持续地编写和运行测试,以保证代码的质量和稳定性。当代码发生变更或者引入新功能时,只需要执行测试套件,即可自动运行所有相关的单元测试,并检查结果是否符合预期。这使得开发者可以更快速、可靠地发现和修复潜在的问题,同时也提高了代码的可维护性和可重用性。

JUnit 被广泛应用于各种 Java 项目中,包括开源项目和商业项目。它不仅可以在命令行上运行,还可以与各种集成开发环境(IDE)和持续集成工具进行集成,如 Eclipse、IntelliJ IDEA、Maven 和 Jenkins 等。

总之,JUnit 是一个功能强大且易于使用的 Java 单元测试框架,为开发者提供了一种标准化和高效的方式来进行单元测试,以确保代码的正确性和可靠性。

安装junit插件

在这里插入图片描述

在这里插入图片描述

重启IDEA

添加依赖

<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>4.13.2</version>
  <scope>test</scope>
</dependency>

编写测试用例

在这里插入图片描述

接口测试工具swagger

什么是swagger

Swagger 是一个用于生成、描述和调用 RESTful 接口的 Web 服务。通俗的来讲,Swagger 就是将项目中所有(想要暴露的)接口展现在页面上,并且可以进行接口调用和测试的服务。

PS:Swagger 遵循了 OpenAPI 规范,OpenAPI 是 Linux 基金会的一个项目,试图通过定义一种用来描述 API 格式或 API 定义的语言,来规范 RESTful 服务开发过程。

Swagger 官网地址:https://swagger.io/

Swagger 有什么用?

从上述 Swagger 定义我们不难看出 Swagger 有以下 3 个重要的作用:

  1. 将项目中所有的接口展现在页面上,这样后端程序员就不需要专门为前端使用者编写专门的接口文档
  2. 当接口更新之后,只需要修改代码中的 Swagger 描述就可以实时生成新的接口文档了,从而规避了接口文档老旧不能使用的问题
  3. 通过 Swagger 页面,我们可以直接进行接口调用,降低了项目开发阶段的调试成本

作者:磊哥聊编程
链接:https://www.zhihu.com/question/63803795/answer/1780508067
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

knife4j

Knife4j 是一款基于 Swagger 的开源工具,用于生成和展示 RESTful API 的文档和接口调试工具。它提供了一系列的功能,使得开发者可以更方便地编写、管理和测试 API。

Knife4j 的主要特性包括:

  1. 自动生成 API 文档:Knife4j 可以根据 Java 代码中的注解信息自动生成 API 文档。开发者只需要在代码中使用 Swagger 的注解进行标记,例如 @Api、@ApiOperation、@ApiParam 等,Knife4j 就会按照这些注解生成相应的文档。

  2. 接口调试和测试:Knife4j 提供了交互式的 API 调试界面,可以直接在文档页面上进行接口的测试和调试。开发者可以输入请求参数,发送请求,并查看响应结果和状态码等信息。

  3. 文档美化和定制:Knife4j 支持对生成的文档进行美化和定制。开发者可以通过配置主题、样式和自定义页面模板等方式,将文档展示得更加美观和符合项目风格。

  4. 安全认证和权限控制:Knife4j 支持集成安全认证和权限控制机制,保护 API 文档的安全性。开发者可以通过配置认证方式、添加访问控制规则等,限制文档的访问权限。

  5. 接口在线调试和监控:Knife4j 提供了接口在线调试和监控的功能。开发者可以查看接口的请求和响应信息,调试接口的参数和数据,甚至可以进行接口性能监控和统计。

总结来说,Knife4j 是一个基于 Swagger 的 API 文档和接口调试工具,它通过自动生成文档和提供交互式调试界面等功能,简化了 RESTful API 的开发和测试过程。

常用注解
  1. @Api:用于标记 Controller 类或接口,表示该类或接口暴露的接口将会被纳入到生成的文档中。
  2. @ApiOperation:用于标记 Controller 中的方法,表示该方法作为一个 API 接口,将会被纳入到生成的文档中。可以通过该注解设置接口的名称、描述等信息。
  3. @ApiParam:用于标记接口方法中的参数,表示该参数作为一个输入参数,将会被纳入到生成的文档中。可以通过该注解设置参数的名称、描述、数据类型等信息。
  4. @ApiModelProperty:用于标记实体类字段,表示该字段作为一个属性,将会被纳入到生成的文档中。可以通过该注解设置字段的名称、描述、数据类型等信息。
  5. @ApiImplicitParam:用于标记接口方法中的参数,表示该参数作为一个隐式参数,将会被纳入到生成的文档中。相比于 @ApiParam,@ApiImplicitParam 可以更灵活地设置参数的位置、数据类型等信息。
  6. @ApiResponse:用于标记接口方法的返回结果,表示该返回结果将会被纳入到生成的文档中。可以通过该注解设置返回结果的状态码、描述等信息。
  7. @ApiResponses:用于标记接口方法的多个返回结果,可以一次性设置多个 @ApiResponse。

添加依赖

<dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-openapi2-spring-boot-starter</artifactId>
            <version>4.1.0</version>
        </dependency>
knife4j:
  enable: true
logging:
  level:
    com.wnhz.book.bk: debug

Controller层

在这里插入图片描述

运行项目,访问http://localhost:9091/doc.html

在这里插入图片描述

并发测试jmeter

什么是并发测试

并发测试是一种测试方法,用于测试系统在高负载情况下的性能和稳定性。它通过模拟多用户同时访问系统,并观察系统在并发负载下的表现和响应时间,以评估系统的性能和可靠性。

什么是jmeter

在并发测试中,通常会使用负载测试工具来模拟大量的请求,例如使用 Apache JMeter 工具进行负载测试。JMeter 是一个开源的 Java 应用程序,用于对各种不同类型的负载进行度量、分析和测试。

JMeter 提供了多种类型的负载测试,包括以下几种:

  1. 线程组测试:线程组测试是最基本的测试类型,它允许将请求发送到服务器,并配置多个并发用户。
  2. 逻辑控制器测试:逻辑控制器测试允许控制测试计划中的请求次序和顺序。
  3. 数据获取器测试:数据获取器测试允许从文件或数据库中读取数据,并将其用于负载测试。
  4. 断言测试:断言测试用于验证请求返回的内容是否合法。
  5. 监听器测试:监听器测试用于收集测试结果并生成报告。

使用 JMeter 进行并发测试的好处包括:

  1. 轻松地生成并发负载:JMeter 工具可以轻松地生成并发负载,模拟真实用户在系统中的行为,评估系统的性能和稳定性。
  2. 统计和分析测试结果:JMeter 工具可以帮助测试人员收集、统计和分析测试结果,生成详细的性能报告和图表,以便于评估系统的表现。
  3. 支持多种协议:JMeter 工具支持多种协议,包括 HTTP、SOAP、FTP、SMTP 等,可以适应各种不同类型的负载测试需求。
  4. 可扩展性:JMeter 工具是一个开源的软件,具有高度的可扩展性和自定义性。用户可以扩展其功能,以满足不同领域和应用的需求。

创建线程组

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

配置HTTP请求

在这里插入图片描述

在这里插入图片描述

使用结果树查看运行结果

在这里插入图片描述

在这里插入图片描述

或者在IDEA查看结果

在这里插入图片描述

会出现重复的结果,可以通过synchronized关键字来解决这个问题,但是会使程序运行效率有所下降。

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java 开发中,有许多常用的插件可帮助提高开发效率和代码质量。以下是一些常见的 Java 开发插件: 1. Maven 插件:Maven 是一个强大的项目构建工具,它使用插件来执行各种构建任务,如编译、打包、测试等。Maven 的常用插件包括 Maven Compiler Plugin、Maven Surefire Plugin 和 Maven Assembly Plugin。 2. Eclipse 插件:Eclipse 是一种流行的 Java 集成开发环境(IDE),它有很多插件可帮助开发人员提高效率。一些常用的 Eclipse 插件包括 Eclipse Maven 插件、Eclipse Git 插件和 Eclipse Spring Tools Suite。 3. IntelliJ IDEA 插件:IntelliJ IDEA 是另一个广泛使用的 Java IDE,它也有很多有用的插件。一些常见的 IntelliJ IDEA 插件包括 Maven Integration、Git Integration 和 Spring Assistant。 4. Checkstyle 插件:Checkstyle 是一个代码规范检查工具,它可以帮助开发人员遵循统一的代码规范。Checkstyle 插件可以集成到 IDE 中,并在编码过程中提供实时的代码规范检查。 5. FindBugs/SpotBugs 插件:FindBugs(SpotBugs 的前身)是一个静态代码分析工具,它可以帮助检测潜在的 bug 和代码质量问题。FindBugs/SpotBugs 插件可以集成到 IDE 中,并在编码过程中提供实时的代码质量检查。 6. SonarLint 插件:SonarLint 是一个代码质量管理工具,它可以帮助开发人员发现和修复代码质量问题。SonarLint 插件可以集成到 IDE 中,并在编码过程中提供实时的代码质量检查和建议。 这些是一些常用Java 开发插件,它们可以帮助开发人员提高效率、确保代码质量,并遵循统一的开发标准。根据具体需求,开发人员还可以探索其他适合自己项目的插件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值