栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

IDEA中Maven项目创建单元测试(JUnit4)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

IDEA中Maven项目创建单元测试(JUnit4)

文章目录

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

具体步骤可能遇到的问题后记

IDEA中Maven项目单元测试(JUnit4)记录 具体步骤

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

创建maven项目

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

在pom.xml中添加依赖


        
        
            junit
            junit
            4.12
            test
        
        
            junit
            junit
            4.13
            compile
        
    

全部pom文件内容如下:



    4.0.0

    org.example
    wordleapp
    1.0-SNAPSHOT

    
        11
        11
    

    
        
        
            junit
            junit
            4.12
            test
        
        
            junit
            junit
            4.13
            compile
        
    


然后如果显示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;

    @Before
    public void setUp() {
        calculator = new Calculator();
    }

    @Test
    public void AddTwoPositiveNumberReturnsTheirSum(){
        assertEquals(6, calculator.add(2, 4));
    }

    @Test
    public void AddAPositiveAndNegativeNumberReturnsTheirSum() {
        assertEquals(3, calculator.add(6, -3));
    }

    @Test
    public void DivideOfTwoPositiveNumbersReturnsThePositiveResult() {
        assertEquals(6, calculator.divide(12, 2), DELTA);
    }

    @Test
    public void DivideOfAPositiveNumberByANegativeNumberReturnsNegativeResult() {
        assertEquals(-3, calculator.divide(12, -4), DELTA);
    }

    @Test
    public void DivideByZeroThrowsAnException() {
        try {
            calculator.divide(6, 0);
            fail("Expected exception for division by zero");
        } catch (ArithmeticException ex) {
            assertTrue(true);
        }
    }
}

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

可能遇到的问题

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

后记

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

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/735248.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号