在eclipse里进行Junit单元测试并生成测试报告

在eclipse里进行Junit单元测试,并生成测试报告

  • 准备工作
  • 单元测试步骤
    • 1.引入Junit
    • 2.生成测试类
    • 3.生成测试报告

准备工作

eclipse里自带Junit,不需要下载相应jar包,所以你只需要新建一个Java Project,在里面写你想要测试的java类文件就可以了。
首先,创建一个Java Project:
1
2
写一个计算器类Calculator作为要测试的类:
3
4
代码如下:

package code;

public class Calculator {
		
	private static double result; // 静态变量,用于存储运行结果
	 
	 public void add(int n){

	        result = result + n;

	    }

	    public void substract(int n){

	        result = result - n;  

	    }

	    public void multiply(int n){
	    	
	    	result = result * n;

	    }         

	    public void divide(int n){

	        result = result / n;

	    }

	    public void remainder(int n){

	        result = result % n;

	    }

	    public void root(double n){
	    	
	    	n=1/n;
	        result = Math.pow(result,n); 

	    }

	    public void power(int n){

	        result = Math.pow(result, n);

	    }

	    public void square(int n){

	        result = n * n;

	    }

	    public void squareRoot(int n){

	    	result = Math.sqrt(n);          

	    }

	    public void clear(){     // 将结果清零

	        result = 0;

	    }

	    public double getResult(){

	        return result;

	    }
}

然后我们就可以来进行单元测试啦~

单元测试步骤

1.引入Junit

5
6
7
8

2.生成测试类

鼠标右击Junit_Test4➡New➡JUnit Test Case
10
按下图勾选设置后点击Next:
11
勾选要测试的函数,然后点击Finish,就会生成一个测试类CalculatorTest:

修改测试类中的内容如下,你也可以自己进行修改,这里给出的是很基础的测试,更加复杂的测试如何实现可以参考其他资料:

package code;

import static org.junit.Assert.*;

import org.junit.Before;
import org.junit.Test;


public class CalculatorTest {

private static Calculator calculator = new Calculator();
	
	@Before
	public void setUp() throws Exception {
		calculator.clear();
	}

	@Test
	public void testAdd() {
		calculator.add(2);

        calculator.add(3);

        assertEquals(5, calculator.getResult(),0.001);
	}

	@Test
	public void testSubstract() {
		calculator.add(10);

        calculator.substract(2);

        assertEquals(8, calculator.getResult(),0.001);
	}

	@Test
	public void testMultiply() {
		calculator.add(10);

        calculator.multiply(2);

        assertEquals(20, calculator.getResult(),0.001);
	}

	@Test
	public void testDivide() {
		calculator.add(8);

        calculator.divide(2);

        assertEquals(4, calculator.getResult(),0.001);
	}
	
	@Test
	public void testRemainder() {
		calculator.add(20);
		calculator.remainder(3);
		assertEquals(2, calculator.getResult(),0.0001);
	}

	@Test
	public void testRoot() {
		calculator.add(27);
		calculator.root(3);
		assertEquals(3, calculator.getResult(),0.0001);
	}

	@Test
	public void testPower() {
		calculator.add(2);
		calculator.power(3);
		assertEquals(8, calculator.getResult(),0.0001);
	}
	
	@Test
	public void testSquare1(){

	        calculator.square(2);

	        assertEquals(4, calculator.getResult(),0.001);

	}     

	@Test   
	public void testSquare2(){

	        calculator.square(0);

	        assertEquals(0, calculator.getResult(),0.001);

	}

	@Test   
	public void testSquare3(){

	        calculator.square(-3);

	        assertEquals(9, calculator.getResult(),0.001);

	}

	@Test
	public void testSquareRoot() {
		calculator.squareRoot(4);
		assertEquals(2, calculator.getResult(),0.001);
	}
}

运行这个测试类:

运行结果:
运行结果

3.生成测试报告




然后会发现生成了一个build.xml文件,我们来运行一下这个文件:


运行成功!:

这里我第一次运行的时候报错了,按照网上的方法说是把jdk-lib中的tools.jar复制到jre-lib中就可以了,但是我发现我的jdk-lib中根本没有tools.jar(好像比较新的版本就是没有tools.jar的),后来我发现我的问题是出在eclipse的jdk没有设置正确,按照下面的步骤修改一下jdk就可以正常运行了。


运行成功后,我们打开自动生成的junit文件夹,找到index.html,点击就可以在浏览器中看到测试报告啦!

以上只是软件工程课程的一个作业总结,如果有不专业或者不严谨的地方欢迎大家指出!

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2023年12月23日
下一篇 2023年12月23日

相关推荐