您的位置:首页 > 其它

Junit3.8 私有方法测试

2015-07-30 11:52 309 查看
1. 测试类的私有方法时可以采取两种方式:
1) 修改方法的访问修饰符,将private修改为default或public(但不推荐采取这种方式)。
2) 使用反射在测试类中调用目标类的私有方法(推荐)。

package junit;

public class Calculator2
{
private int add(int a, int b)
{
return a + b;
}
}

package junit;

import java.lang.reflect.Method;

import junit.framework.Assert;
import junit.framework.TestCase;
/**
* 测试私有方法,反射
*/
public class Calculator2Test extends TestCase
{
public void testAdd()
{
try
{
Calculator2 cal2 = new Calculator2();

Class<Calculator2> clazz = Calculator2.class;

Method method = clazz.getDeclaredMethod("add", new Class[] {
Integer.TYPE, Integer.TYPE });

method.setAccessible(true);

Object result = method.invoke(cal2, new Object[] { 2, 3 });

Assert.assertEquals(5, result);

}
catch (Exception ex)
{
Assert.fail();
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: