Java测试框架(Junit5和Spock)使用指南

2023-12-26 18:48

本文主要是介绍Java测试框架(Junit5和Spock)使用指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

Junit

介绍

架构

使用

1.添加依赖

2.样例说明

3.测试覆盖率

常用注解

参考资料

Spock

介绍

使用

1.添加依赖

2.创建groovy文件夹

3.Groovy Class

4.Import

5.Code

参考资料


  • Junit

    • 介绍

      • JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage
        • JUnit Platform 是在JVM中启动测试框架的基础,被许多IDE和构建工具所支持
        • JUnit Jupiter是最新的编程模型,也是JUnit 5测试的TestEngine
        • JUnit Vintage,它是针对老的JUnit 3和JUnit 4测试的TestEngine
      • 架构

    • 使用

      • 1.添加依赖

        • gradle

        • Maven

      • 2.样例说明

      • 3.测试覆盖率

        • 运行
        • 结果

    • 常用注解

      • @BeforeEach:用来修饰方法,该方法会在每一个测试方法执行之前执行一次
      • @AfterEach:用来修饰方法,该方法会在每一个测试方法执行之后执行一次
      • @BeforeAll:用来静态修饰方法,该方法会在所有测试方法执行之前执行一次
      • @AfterAll:用来静态修饰方法,该方法会在所有测试方法执行之后执行一次
      • @Test:使用该注解标注的public void方法会表示为一个测试方法
      • @RepeatedTest:表示方法可重复执行RepeatedTest
    • 参考资料

      • 官网
        • JUnit 5
      • 官方文档
        • JUnit 5 User Guide
      • 论坛帮助
        • Newest 'junit5' Questions - Stack Overflow
      • 使用样例
        • junit5-samples/junit5-jupiter-starter-gradle at r5.8.1 · junit-team/junit5-samples · GitHub
  • Spock

    • 介绍

      • Spock是适合 Java 和 Groovy 应用程序的一个测试框架
      • Spock基于JUnit runner,因此Spock能够在大多数IDE、编译工具、持续集成服务下工作
    • 使用

      • 1.添加依赖

        • Gradle 具有对 Groovy 和 Scala 的内置支持,只需要应用Groovy插件
        • 依赖项
      • 2.创建groovy文件夹

        • 创建groovy文件夹,并将groovy目录为测试源目录(Test Source Root)
        • 原因
          • 按照groovy的约定,默认编译groovy包下的单测,所以需要建个groovy文件夹存放spock的单测代码

      • 3.Groovy Class

        • 创建类型为Groovy Class的单测文件,不是Java Class类型

      • 4.Import

        • 在groovy文件里:import spock.lang.*,同时这个类需要继承Specification

      • 5.Code

        • 编写单元测试代码代码
    • 参考资料

      • 官方文档
        • Spock Framework Reference Documentation
      • 官方示例
        • GitHub - spockframework/spock-example: Spock example specifications along with ready-to-go Gradle and Maven builds

这篇关于Java测试框架(Junit5和Spock)使用指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/540462

相关文章

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

Python Websockets库的使用指南

《PythonWebsockets库的使用指南》pythonwebsockets库是一个用于创建WebSocket服务器和客户端的Python库,它提供了一种简单的方式来实现实时通信,支持异步和同步... 目录一、WebSocket 简介二、python 的 websockets 库安装三、完整代码示例1.

Springboot @Autowired和@Resource的区别解析

《Springboot@Autowired和@Resource的区别解析》@Resource是JDK提供的注解,只是Spring在实现上提供了这个注解的功能支持,本文给大家介绍Springboot@... 目录【一】定义【1】@Autowired【2】@Resource【二】区别【1】包含的属性不同【2】@

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

Elasticsearch 在 Java 中的使用教程

《Elasticsearch在Java中的使用教程》Elasticsearch是一个分布式搜索和分析引擎,基于ApacheLucene构建,能够实现实时数据的存储、搜索、和分析,它广泛应用于全文... 目录1. Elasticsearch 简介2. 环境准备2.1 安装 Elasticsearch2.2 J

Kotlin 作用域函数apply、let、run、with、also使用指南

《Kotlin作用域函数apply、let、run、with、also使用指南》在Kotlin开发中,作用域函数(ScopeFunctions)是一组能让代码更简洁、更函数式的高阶函数,本文将... 目录一、引言:为什么需要作用域函数?二、作用域函China编程数详解1. apply:对象配置的 “流式构建器”最

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

Java中List的contains()方法的使用小结

《Java中List的contains()方法的使用小结》List的contains()方法用于检查列表中是否包含指定的元素,借助equals()方法进行判断,下面就来介绍Java中List的c... 目录详细展开1. 方法签名2. 工作原理3. 使用示例4. 注意事项总结结论:List 的 contain