在MyEclipse中使用JUnit4进行单元测试

首先导入junit所需要的jar包,然后在需要测试的方法上加相应的注解:


在右侧点击相应的方法,然后点击run as,选择Junit test。如果通过的话右下角Junit会显示绿条,测试不通过就会显示红条。

以上是对单个方法进行测试,若需要对多个方法进行测试,在右侧点击类名,然后点击run as,选择Junit test。如果通过的话右下角Junit会显示绿条,测试不通过就会显示红条。


另外再说两个注解,Before和After。

上述代码点类名进行Junit测试运行结果为(绿条):

before
run
after
before
eat
after

Before是在每个方法运行之前都会运行,所以一般开发中我们往往会将一些重复的定义,以及重复的初始化写在这里面。After是在每个方法运行完毕后都会执行,可进行回收,释放资源等操作。


与之相区别的就是BeforeClass和AfterClass。上述程序点类名进行Junit测试运行结果为(绿条):

beforeClass
run
eat
afterClass

BeforeClass是在类加载的时候执行的,所以需要被注解的方法声明为静态的方法,AfterClass也是同理。

可见与上面Before和After的区别在于,BeforeClass和AfterClass分别只是在程序开始和结束运行一次。

另外再讲一下断言(Assert):

Assert.assertArrayEquals(expecteds, actuals);
Assert.assertArrayEquals(new int []{1,2}, new int []{1,2});

第一个参数是期望的值,第二个参数是实际得到的值。如果期望的值与实际的值相同,则测试通过,否则测试不通过。

Assert.assertArrayEquals(message, expecteds, actuals);

判断期望的值与实际的值是否相同,如果不相同则输出前面的消息(message)。


引入Junit后,进行单元测试,莫名其妙报了个这样的错误

The import org.junit.Test conflicts with a type defined in the same file

  • 原因一:常规原因,导入的jar包相冲突

  • 原因二:狗血原因,写junit测试的Java类名为Test.java

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值