JUnit单元测试的初步使用

来源:互联网 发布:李强强php 编辑:程序博客网 时间:2024/05/16 03:22

为了测试,我新建了一个Java工程JUnit,工程下有包-org.test,并且包内有测试类BeTested{},现在需要测试add()和multi()两个方法。


package org.test;public class BeTested {   public int add(int a,int b){   return a+b;   }   public int multi(int a,int b){   return a*b;   }}


被测试类建好之后,就要开始搭建测试类了。

第一步:在工程上 右键-new-JUnit Test Case

在早期的JUnit框架版本中,测试用例的初始化方法必须是setUp(),销毁方法必须是TearDown(),因为JUnit框架不认识其他方法。


点击Browse之后,搜索要测试的类

点击OK之后选择类中要测试的方法


选择完之后会提示你是否引入junit的jar包,确认即可,当然也可以自己引入

第二步:现在我们的被测试类的同一个包下(即org.test)下已经有了一个叫做JUnitTest.java的测试类,接下来就要写测试用例了

package org.test;import static org.junit.Assert.*;import org.junit.Test;public class JUnitTest {@Test       //@Test标注不能删除public void testAdd() {fail("Not yet implemented");}@Testpublic void testMulti() {fail("Not yet implemented");}}
上述代码中,我们需要重写testAdd和testMulti方法(这是自动生成的方法名,自己改也没关系),我为每个方法写两个用例,一个正确一个错误

package org.test;import static org.junit.Assert.*;import org.junit.Test;public class JUnitTest {@Testpublic void testAdd() {BeTested beTested=new BeTested();//assertEquals(expected, actual);设置断言assertEquals(2, beTested.add(1, 1));//add()的返回值和2一致则测试正确}@Testpublic void testAdd1() {BeTested beTested=new BeTested();assertEquals(3, beTested.add(1, 1));//add()的返回值和2不一致则测试错误}@Testpublic void testMulti() {BeTested beTested=new BeTested();assertEquals(1, beTested.multi(1, 1));//multi()的返回值和1一致则测试正确}@Testpublic void testMulti1() {BeTested beTested=new BeTested();assertEquals(2, beTested.multi(1, 1));//multi()的返回值和1不一致则测试错误}}
测试结果:

         
左图中结果显示红色,说明单元测试比没有通过,但是testAdd和testMulti通过测试了。右图只要修改testAdd1和testMulti的方法实现就可以让单元测试通过。



0 0
原创粉丝点击