junit --Eclipse下的环境搭建

大体的步骤

  •    创建project
  •    添加junit包
  •    创建一个待测试的类JDemo.java
  •    为JDemo.java创建一个Junit测试用例JDemoTest.java
  •    运行测试

 

  1. 创建一个project  :【new】-》【project】   (以下截图是操作过程的主要步骤,并非所有)


2. 然后在project的名字上,右键,打开属性窗口,通过【Java build path】-》【library】-》【Add library】添加junit的包。
添加的时候,我们选择junit4 (目前最高版本的junit)
要说明的,其中添加junit包在创建project的时候也可以添加的,就是点击第一张图片的时候“Next”进入添加页面。

3. 创建一个java文件JDemo.java,后面要利用junit对其进行测试

 JDemo.java  

它实现了一个加法的算法。

 public class JDemo  {

    int a;

    int b;

    int result;

   

    public int add(int a, int b){

       result = a+b;

       return result;

    }

}


4. 为此JDemo.java 类创建一个junit测试用例,在该类的名称上【右键】-》【new】-【Junit Test case】  
(主要,如果没有在该类的名称上点击,窗口下方的“Class under test” 就会为空,如果为空,“Next”键就不可用,也就没有下图的操作。当然,下图的操作也不是必须的,只是按下图操作,Eclipse会自动为我们在测试用例中创建一个测试方法而已,后面可以看到)

点击【next】
选择我们想要测试的JDemo.java 中想要测试的方法add()

点击【Finish】后,Eclipse就会为我们创建一个用例测试JDemo.java 的测试用例JDemoTest.java,并且还自动创建了一个测试方法TestAdd()
正如前面所说,如果没有选择要测试的方法的那一步,只是这里会少一个测试方法testAdd()而已,这是可以自己手动加入的,并无实质的影响。

然后再修改JDemoTest测试用例中的testAdd就行了,按如下修改
 JDemoTest.java
 

import static org.junit.Assert.*;

 

import org.junit.AfterClass;

import org.junit.BeforeClass;

import org.junit.Test;

 

 

public class JDemoTest {

 

         @BeforeClass

         public static void setUpBeforeClass() throws Exception {

         }

 

         @AfterClass

         public static void tearDownAfterClass() throws Exception {

         }

 

         @Test

         public void testAdd() {

                   JDemo a= new JDemo();

                   assertEquals(6,a.add(3, 3));

         }

 

}

修改完成后,即得到以下显示(注意左边的结构框架:)
 
5 运行这个用例
通过点击菜单【运行】,或者右键中的Run,执行,结果如下
上面用到了junit的断言assertEquals,且上面我们的预期和实际结果是一直的。

下面我们故意修改预期结果,测试错误的情况junit是如何处理的
当测试失败后,还可以看到失败的原因。
 
 
 ========================================
其实到上面也就完成了,但通过网络学习,junit的测试还有一条经验

一条 JUnit 的最佳实践:单元测试代码和被测试代码使用一样的包,不同的目录。

 即我们要追求如下的效果
 
为此,我们要修改创建junit测试用例的过程。

1.首先为project添加一个文件夹,专门用来存放测试用例

2. 然后,在创建junit 测试用例时,注意选择用例的存放目录即可
 
next后,

最后就形成了我们想要的效果
其实,至于这样分开到底有什么好处,我现在还不清楚,估计后期导出导入方便吧。

junit --Eclipse下的环境搭建,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。