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

如何在Intellij IDEA中添加JUnit单元测试

下载jar包

首先需要去下载JUnit的jar包以及一个依赖包hamcrest.core,他们的下载地址如下:
junit:junit:4.13-beta-1
hamcrest.core:1.3.0.1
需要注意的是hamcrest.core包不能使用2.1版本的,因为4.13版本的JUnit和它不兼容,会抛出ClassNotFoundException异常。

推荐使用 junit-4.13.jarhamcrest-core-1.3.jar ,不然会有意想不到的麻烦

另外,上面的两个地址特别慢,基本下载不下来,这里给出另外的一个第三方网站 https://jar-download.com/

在Intellij IDEA项目中添加jar包

首先需要在IDEA中添加刚才下载好的包:

记得勾选Export选项。

下载插件并进行设置

然后需要下载一个名为JUnitGeneratorV2.0的插件:

然后对其进行设置:

输出路径可以更改为想要的路径

这里设定的路径是通过 JUnitGenetor插件,使用Alt+Insert快捷键自动生成当前类的所有方法的测试单元时,自动生成的 .java 文件的存放目录

可以将默认的output path路径设置为如下图所示, ‘({SOURCEPATH}/…/test/){PACKAGE}/${FILENAME}’ 可以在和scr同级目录新建test目录,用于存放测试文件

如果是使用Ctrl+Shift+T快捷键自定义需要测试的方法,则生成的文件会存放于指定的 存放测试文件的目录(下一节有说明)

将图片中的$data改为$today是为了防止生成的测试类产生乱码。

创建存放测试文件的目录

需要在project下新建一个文件夹,用于存放自动生成的测试.java文件,比如 Factorial.java类对应的 FactorialTest.java文件的存放位置
这里我新建一个目录,和scr目录同级,如图

接下来需要将这个文件夹,设置为存放生成测试文件的目录
打开项目设置

使用JUnit

当想要为当前类添加测试代码,只需要在当前类中使用Alt+inset(或者导航栏中点击Code-Generator)快捷键,选择JUnit-JUnit4,就会自动生成当前类的测试类:

插件默认会测试所有方法,使用快捷键Ctrl+Shift+T可以选择性的测试部分方法,非常的方便:

在输出路径中就可以看到自动生成的测试类,含有需要测试的方法,接下来就可以编写代码对类进行测试啦

相关文章:

  • fiddler抓包
  • jvm调优-内存泄漏导致cpu飙升
  • MySQL 基础学习总结(一)
  • 【操作系统】I/O 管理(一)—— I/O 管理概述
  • 使用对比学习处理大规模多模态单细胞数据
  • JAVA基础——day07
  • 【JavaWeb】一篇文章掌握Servlet
  • APP开发的方式
  • 【面试题】这道 JS 经典面试题不要背!今天帮你彻底搞懂它
  • 神经网络(深度学习)----MLPClassifier库的初尝试
  • MindSpore Serving模型部署,如何提升吞吐量,降低推理时延
  • TCP/IP协议专栏——静态路由互导 详解——网络入门和工程维护必看
  • 你知道嵌入式开发主要做什么吗?
  • 树莓派电脑虚拟机3设备连接
  • 【软件测试】男生vs女生,谁更加适合?没有你发现不了的bug......
  • [iOS]Core Data浅析一 -- 启用Core Data
  • [译]如何构建服务器端web组件,为何要构建?
  • 【笔记】你不知道的JS读书笔记——Promise
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • gcc介绍及安装
  • golang 发送GET和POST示例
  • HTTP请求重发
  • idea + plantuml 画流程图
  • Intervention/image 图片处理扩展包的安装和使用
  • MySQL数据库运维之数据恢复
  • Quartz初级教程
  • VUE es6技巧写法(持续更新中~~~)
  • windows-nginx-https-本地配置
  • 编写符合Python风格的对象
  • 构建工具 - 收藏集 - 掘金
  • 基于HAProxy的高性能缓存服务器nuster
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 入门级的git使用指北
  • 突破自己的技术思维
  • 学习HTTP相关知识笔记
  • PostgreSQL之连接数修改
  • ​ArcGIS Pro 如何批量删除字段
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • (zt)基于Facebook和Flash平台的应用架构解析
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (附源码)计算机毕业设计ssm基于B_S的汽车售后服务管理系统
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (七)c52学习之旅-中断
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (一)appium-desktop定位元素原理
  • (转)大型网站的系统架构
  • (转)视频码率,帧率和分辨率的联系与区别
  • (转)为C# Windows服务添加安装程序
  • .net 8 发布了,试下微软最近强推的MAUI
  • .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions
  • .NET6 开发一个检查某些状态持续多长时间的类
  • .net知识和学习方法系列(二十一)CLR-枚举