当前位置: 首页 > news >正文

JUnit 单元测试(详解)

 🚀 个人简介:某大型国企资深软件开发工程师,信息系统项目管理师、CSDN优质创作者、阿里云专家博主,华为云云享专家,分享前端后端相关技术与工作常见问题~

💟 作    者:码喽的自我修养🥰
📝 专    栏:Java入门到实战 🎉

🌈 创作不易,如果能帮助到带大家,欢迎 收藏+关注  💕

​ 🌈🌈文章目录  

1. 测试分类

2. JUnit单元测试介绍

3. 引入本地JUnit.jar

4. 编写和运行@Test单元测试方法

5. 设置执行JUnit用例时支持控制台输入

1. 设置数据:

2. 配置文件位置:

3. 如果上述位置设置不成功,需要继续修改如下位置

6. 定义test测试方法模板

本文为JUnit单元测试相关知识,下边将对JUnit单元测试概念,JUnit安装与使用,编写和运行@Test单元测试方法,设置执行JUnit用例时支持控制台输入,定义test测试方法模板等进行详尽介绍~ 

1. 测试分类

黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。

白盒测试:需要写代码的。关注程序具体的执行流程。

2. JUnit单元测试介绍

JUnit 是由 Erich Gamma 和 Kent Beck 编写的一个测试框架(regression testing framework),供Java开发人员编写单元测试之用。

JUnit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。

要使用JUnit,必须在项目的编译路径中引入JUnit的库,即相关的.class文件组成的jar包。jar就是一个压缩包,压缩包都是开发好的第三方(Oracle公司第一方,我们自己第二方,其他都是第三方)工具类,都是以class文件形式存在的。

3. 引入本地JUnit.jar

第1步:在项目中File-Project Structure中操作:添加Libraries库

其中,junit-libs包内容如下:

第2步:选择要在哪些module中应用JUnit库

第3步:检查是否应用成功

注意Scope:选择Compile,否则编译时,无法使用JUnit。

第4步:下次如果有新的模块要使用该libs库,这样操作即可

4. 编写和运行@Test单元测试方法

JUnit4版本,要求@Test标记的方法必须满足如下要求:

  • 所在的类必须是public的,非抽象的,包含唯一的无参构造器。

  • @Test标记的方法本身必须是public,非抽象的,非静态的,void无返回值,()无参数的。

import org.junit.Test;public class TestJUnit {@Testpublic void test01(){System.out.println("TestJUnit.test01");}@Testpublic void test02(){System.out.println("TestJUnit.test02");}@Testpublic void test03(){System.out.println("TestJUnit.test03");}
}

5. 设置执行JUnit用例时支持控制台输入

1. 设置数据:

默认情况下,在单元测试方法中使用Scanner时,并不能实现控制台数据的输入。需要做如下设置:

idea64.exe.vmoptions配置文件中加入下面一行设置,重启idea后生效。

-Deditable.java.test.console=true

2. 配置文件位置:

添加完成之后,重启IDEA即可。

3. 如果上述位置设置不成功,需要继续修改如下位置

修改位置1:IDEA安装目录的bin目录(例如:D:\develop_tools\IDEA\IntelliJ IDEA 2022.1.2\bin)下的idea64.exe.vmoptions文件。

修改位置2:C盘的用户目录C:\Users\用户名\AppData\Roaming\JetBrains\IntelliJIdea2022.1 下的idea64.exe.vmoptions`文件。

6. 定义test测试方法模板

选中自定义的模板组,点击”+”(1.Live Template)来定义模板。

到此这篇文章就介绍到这了,更多精彩内容请关注本人以前的文章或继续浏览下面的文章,创作不易,如果能帮助到大家,希望大家点点收藏+关注 ~💕  

​ 

   更多专栏订阅推荐:

🥕 JavaScript深入研究

👍 前端工程搭建
💕 vue从基础到起飞

✈️ HTML5与CSS3

🖼️ JavaScript基础

⭐️ uniapp与微信小程序

📝 前端工作常见问题与避坑指南

✍️ GIS地图与大数据可视化

📚 常用组件库与实用工具

💡 java入门到实战 


http://www.mrgr.cn/news/52795.html

相关文章:

  • 系统环境术语介绍
  • 100kw直流负载箱参考标准是哪些
  • 绘制数据图的方法
  • 96. 不同的二叉搜索树【中等】
  • Nature 正刊丨神经肽信号调控T细胞分化
  • 撰写ChatGPT prompt 得简单诀窍
  • 标准IO输入输出
  • 读数据工程之道:设计和构建健壮的数据系统12开源软件
  • CMake技术细节:显示编译命令
  • YoloV9改进策略:Block改进|使用ContextAggregation模块改善RepNCSP模块|即插即用
  • CANFD报文CRC16校验码计算详解
  • 十一、pico+Unity交互开发教程——手指触控交互(Poke Interaction)
  • Nginx开发框架
  • 【网络】IP协议的地址管理
  • Air780E的固件的远程升级,一文讲清
  • 第十七章 Java多线程--线程池-ScheduledThreadPoolExecutor
  • 基于深度学习的在线小分子Kinome选择性预测平台的Python实现-更加的详细版本
  • Linux入门:进程状态,优先级与进程调度
  • Redis持久化与淘汰机制深度解析
  • 互联网新赛道 互联网转型 互联网前景