前面自己写了一个计算器,准备用在项目里
http://www.cnblogs.com/blog5277/p/5707304.html
由于项目是用户计算跟钱有关的,所以这可不敢出BUG
于是就用了JUnit做单元测试
第一步,引入相关maven包,放入pom.xml
我个人喜欢用最新的正式版
<!-- https://mvnrepository.com/artifact/junit/junit --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency>
第二步,建一个类,继承TestCase类
第三步,在这个类里建public void的方法,在这个方法里写测试用例
这两步的代码:
public class TestCalculatorUtil extends TestCase { public void testGetResult(){ BigDecimal result=CalculatorUtil.getResult("1 + 1"); assertEquals(new BigDecimal("2.00"),result); BigDecimal result1=CalculatorUtil.getResult("1 - 1"); assertEquals(new BigDecimal("0.00"),result1); BigDecimal result2=CalculatorUtil.getResult("1 * 2"); assertEquals(new BigDecimal("2.00"),result2); } public void testGetResult1(){ BigDecimal result3=CalculatorUtil.getResult("1 / 2"); assertEquals(new BigDecimal("0.50"),result3); } }
我这个result后面就算调用的我要测试的类,类名叫CalculatorUtil,调用他的方法getResult(String input)
assertEquals(参数1,参数2)
参数1是你预期要得到什么值,参数2就是你所测试的方法得到什么值
我这个例子也说明了,测试用例随便放,一个方法里能放好几个,也可以用不同的方法放
第四步,再写另外一个方法,继承TestSuite类,把下面的代码粘过去
public class TestAll extends TestSuite { public static Test suite() { TestSuite suite = new TestSuite("TestSuite Test"); suite.addTestSuite(TestCalculatorUtil.class); return suite; } public static void main(String args[]){ TestRunner.run(suite()); } }
suite方法里第二行,那里是添加前面第二步所创建的类的class,可以添加多个,一下测试好多个测试类
运行结果如下: