文章目录

  • IDEA中Maven项目单元测试(JUnit4)记录
    • 具体步骤
    • 可能遇到的问题
    • 后记

IDEA中Maven项目单元测试(JUnit4)记录

具体步骤

工具:idea2021.3版本,maven 4.0.0, javaJDK 11, JUnit4

创建maven项目

初始的项目结构:maven的测试文件夹test默认是在src下面的。

pom.xml中添加依赖

<dependencies><!-- https://mvnrepository.com/artifact/junit/junit --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13</version><scope>compile</scope></dependency></dependencies>

全部pom文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>org.example</groupId><artifactId>wordleapp</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>11</maven.compiler.source><maven.compiler.target>11</maven.compiler.target></properties><dependencies><!-- https://mvnrepository.com/artifact/junit/junit --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13</version><scope>compile</scope></dependency></dependencies></project>

然后如果显示JDK不对,请按如下操作。点击右上角的设置(齿轮形状),进入project structure

在modules中的dependencies中选取合适的jdk。这里笔者用的是JDK11.

下面是创建类,然后创建测试类的过程。

在src/main/java下面创建WordleGuess类,如下图所示。然后鼠标放在类名上,使用创建测试类快捷键:ctrl + shift + T

会出现创建测试类的提示

然后按照步骤点击即可:选择测试库(这里是JUnit4),类名(自动生成),其他默认(因为这里类中没有定义方法)即可。

然后我们就可以看到测试文件夹下面 出现了我们要的测试类

具体的使用@TEST注解进行测试,下面贴的代码是另一个demo里面的,但是项目结构是一样的,不妨碍读者理解过程。
左边是项目结果,右侧圈出来的小方框是执行测试的按钮,可以全部执行;也可以按下面的单独的方法的测试,点击对应的按钮即可。

source code :Calculator类

package com.agiledeveloper;public class Calculator {public int add(int op1, int op2) {return op1 + op2;}public double divide(double numerator, double denominator) {if (Math.abs(denominator) < 0.00000001)throw new ArithmeticException("Division by zero");return numerator / denominator;}
}

测试类CalculatorTest

package com.agiledeveloper;import junit.framework.TestCase;
import org.junit.Before;
import org.junit.Test;import static org.junit.Assert.*;public class CalculatorTest {private Calculator calculator;private final double DELTA = 0.001;@Beforepublic void setUp() {calculator = new Calculator();}@Testpublic void AddTwoPositiveNumberReturnsTheirSum(){assertEquals(6, calculator.add(2, 4));}@Testpublic void AddAPositiveAndNegativeNumberReturnsTheirSum() {assertEquals(3, calculator.add(6, -3));}@Testpublic void DivideOfTwoPositiveNumbersReturnsThePositiveResult() {assertEquals(6, calculator.divide(12, 2), DELTA);}@Testpublic void DivideOfAPositiveNumberByANegativeNumberReturnsNegativeResult() {assertEquals(-3, calculator.divide(12, -4), DELTA);}@Testpublic void DivideByZeroThrowsAnException() {try {calculator.divide(6, 0);fail("Expected exception for division by zero");} catch (ArithmeticException ex) {assertTrue(true);}}
}

测试结果展示:全部测试通过

可能遇到的问题

如果无法创建测试类,请参考笔者的另一篇博文:IDEA2021.3无法创建测试类解决方法

后记

把这个过程记录下来,方便自己复盘,如果对读者有些许帮助,也是极好的。

IDEA中Maven项目创建单元测试(JUnit4)相关推荐

  1. SonarQube中Maven项目的测试覆盖率报告

    此文章描述了如果单元测试和集成测试分别运行,如何为Maven构建生成测试报告. SonarQube将所有测试报告合并为一份涵盖整体的测试报告.因此,如果您在Maven项目中将单元测试(由Maven S ...

  2. Myeclipse学习总结(15)——Eclipse/MyEclipse中Maven项目常见问题解决汇总

    Eclipse/MyEclipse中Maven项目一般会遇到如下问题: 一. The superclass "javax.servlet.http.HttpServlet" was ...

  3. 艾伟:为WPF项目创建单元测试

    可能你已发现一个问题,我们无法使用VS对WPF项目创建单元测试(VS2005不行,VS2008我没试过,但据说也不行),这让人很郁闷,这里将介绍如何使用NUnit来对WPF项目创建单元测试并解决其中的 ...

  4. pom文件找不到子项目_java,eclipse_eclipse中maven项目pom.xml文件找不到parent要怎么解决?,java,eclipse,maven - phpStudy...

    eclipse中maven项目pom.xml文件找不到parent要怎么解决? 在maven项目中方pom.xml文件找不到parent,maven clean报错如下: [ERROR] [ERROR ...

  5. Maven项目创建教程

    Maven项目创建教程 1. 地址和库的配置 a)创建"库"文件 b)设置setting.xml文件 2. 创建"Maven" 项目 3. 三种运行" ...

  6. maven项目进行单元测试时报错:Method initializationError not found;Openning the test class

    maven项目进行单元测试时报错:Method initializationError  not found;Openning the test class 相信很多第一次使用单元测试的小伙伴都会遇到 ...

  7. 解决idea中maven项目无法读取src/main/java目录下面的配置文件问题

    解决idea中maven项目无法读取src/main/java目录下面的配置文件问题 参考文章: (1)解决idea中maven项目无法读取src/main/java目录下面的配置文件问题 (2)ht ...

  8. Linux中把文件夹打成war包,SpringBoot中maven项目打成war包部署在liunx服务器上的方法...

    说明:Spring Boot由于内嵌了如Tomcat,Jetty和Undertow这样的容器,也就是说可以直接跑起来,用不着再像Spring项目还需要外置的Tomcat等容器来进行部署工作了,通过启动 ...

  9. IDEA中Maven项目中界面右边的Maven Projects窗口找不到不出来

    问题描述:IDEA中Maven项目中界面右边的Maven Projects窗口找不到不出来 解决方法: 点击一下你idea界面最左下角的那个小框,maven可以从里面找到,然后点击一下,界面右边的Ma ...

最新文章

  1. [20180606]如何dump数据库里面的汉字.txt
  2. python--输出spwm的数组
  3. 602. Friend Requests II: Who Has Most Friend?
  4. [archlinux] linux boot process/order/stage
  5. 一种避免 iOS 内存碎片的方法
  6. 繁体中文转换为简体中文的PHP类
  7. extjs 如何将局部的变量变为全局变量
  8. java day21【缓冲流、转换流、序列化流】
  9. docker改变镜像源
  10. 非递归中序遍历---算法导论12.1-3
  11. Python计算水仙花数
  12. 黑马python培训费用
  13. 二维码扫描枪是如何在我们生活中助力移动支付成为主流
  14. APP加密,ios代码混淆工具,虚拟化技术 适用于移动应用程序的虚拟化加密软件
  15. 深度学习基础-损失函数详解
  16. android 8.0备份,华为手机怎么备份和恢复数据?华为EMUI 8.0系统备份/恢复数据教程...
  17. 【软考系统架构设计师】计算机组成原理与体系结构章节习题集
  18. 微信小程序请求的封装及跨域的解决。
  19. 支付接口如何申请?商户申请条件是什么?
  20. 5.1 在工作表中查找指定内容的单元格 [原创Excel教程]

热门文章

  1. Object类-try-catch-finally-throw-throws-自定义异常
  2. 作业1--求100内的奇数。
  3. CF 546E(最大流
  4. 01 MySQL锁概述
  5. oracle将查询结果声明为伪表,Oracle查询操作(增删改查,伪表,高级查询)实例讲解...
  6. 实验数据:将甲醛和亚硝酸的模拟分子网络分别计算100次的结果
  7. 【Paper】2020_GrHDP Solution for Optimal Consensus Control of Multiagent Discrete-Time Systems
  8. 【Matlab 控制】矩阵、图像操作基础
  9. DFT实际应用-User-Defined Test Points Example
  10. 【进展】温度监测报警器(系统)作品项目快发布了!