首页 > 代码库 > Junit的使用
Junit的使用
<style></style>CalculatorCalculatorTest
Junit是用于编写单元测试的框架。对于已经写好的函数,可以使用Junit生成单元测试代码。
自己的环境是:Linux
Java环境是:JDK1.7
IDE:Eclipse Java EE IDE for Web Developers.Version: Mars.2 Release (4.5.2) Build id: 20160218-0600
使用步骤
1、新建项目,命名为JUnit_Test,编写了一个用于计算的类:Calcutor,代码中故意留下一些问题,便于测试。代码如下:
1 package com.test.unit; 2 3 public class Calculator 4 { 5 // 加法 6 public int add(int a, int b) 7 { 8 return a + b; 9 }10 11 // 减法12 public int substract(int a, int b)13 {14 return a + b; // Bug: 正确的应该是a-b15 }16 17 // 乘法18 public int multiply(int a, int b)19 {20 try21 {22 Thread.sleep(300);//用于性能测试23 }24 catch (InterruptedException e)25 {26 // TODO Auto-generated catch block27 e.printStackTrace();28 }29 return a * b;30 }31 32 // 除法33 public int divide(int a, int b) throws ArithmeticException34 {35 if (b == 0)36 {37 throw new ArithmeticException();38 }39 return a / b;40 }41 42 // 平方根43 public void squareRoot(int n)44 {45 for (;;)46 ; // Bug : 死循环47 }48 }
2、引入Junit库。选中项目,右键——Build Path——Add Libraries,选择JUnit,引入的包如下:
3、生成测试类。选中Calcutor.java,右键——New——JUnitTest Case
选择setUp,再下一步,选择要进行测试的方法,及生成了选择的函数的测试用例,再根据需要自己编写代码。
主要测试类型有三种:
(1)常规的计算测试。调用函数计算值,输入自己期望的值,以及出错信息。如果调用函数计算的值与自己期望的值不相等,则抛出出错信息。
(2)用于性能测试。要让一个方法,200毫秒里运行完,如果这个方法200毫秒不能运行完,那么这个方法就应该抛出异常。
(3)异常测试。期待抛出异常,如果没有抛出异常,则报错。
测试代码如下:
1 package com.test.unit; 2 3 import static org.junit.Assert.*; 4 5 import org.junit.Before; 6 import org.junit.Test; 7 8 public class CalculatorTest 9 {10 Calculator cal;11 12 @Before13 public void setUp() throws Exception14 {15 cal = new Calculator();16 }17 18 @SuppressWarnings("deprecation")19 @Test20 public void testAdd()21 {22 int rel = cal.add(10, 5);//调用函数计算的值23 assertEquals("加法有问题", 15, rel);//传入计算的值,自己期望的值,出错信息24 }25 26 @Test27 public void testSubstract()28 {29 int rel = cal.substract(20, 5);30 assertEquals("减法有问题", 16, rel);31 }32 33 // 用于性能测试34 // 要让一个方法,200毫秒里运行完,如果这个方法200毫秒不能运行完,那么这个方法就应该抛出异常35 @Test(timeout = 200)36 public void testMultiply()37 {38 int rel = cal.multiply(2, 4);39 assertEquals("乘法有问题", 8, rel);40 }41 42 //异常测试43 @Test(expected = ArithmeticException.class)44 public void testDivide()45 {46 int rel = cal.divide(10, 0);47 assertEquals("除法有问题", 5, rel);48 }49 50 }
<style></style>
4、完成测试代码的编写后,包管理器中选中CalculatorTest,右键——Run as——JUnit Test,进行测试,测试结果如下:
根据报错信息再修改自己的代码。
Junit的使用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。