私有方法的单元测试
作者:网络转载 发布时间:[ 2015/9/2 16:32:48 ] 推荐标签:软件测试技术 private
测试类的私有方法时可以采取两种方式:
1.修改方法的访问修饰符,将private修改为default或者public。(不推荐)。
2.在测试类中使用反射调用目标类的私有方法。(推荐)。
程序实例
一个计算加法的方法,是私有方法,在测试类中通过反射调用该方法进行测试.
PS:使用JUnit 3。
被测试的类:
package com.mengdd.junit;
public class Calculator2
{
private int add(int a, int b)
{
return a + b;
}
}
测试类:
package com.mengdd.junit;
import java.lang.reflect.Method;
import junit.framework.Assert;
import junit.framework.TestCase;
public class CalculatorTest2 extends TestCase
{
public void testAdd()
{
Calculator2 calculator2 = new Calculator2();
// 得到class对象
Class<Calculator2> clazz = Calculator2.class;
// 得到方法
try
{
Method method = clazz.getDeclaredMethod("add", new Class[] {
int.class, int.class });// 这里也可以用:Integer.TYPE
method.setAccessible(true);// 抑制访问修饰符,使得私有方法变为可以访问的
Object result = method.invoke(calculator2, new Object[] { 2, 3 });
Assert.assertEquals(5, result);
}
catch (Exception e)
{
e.printStackTrace();
Assert.fail();
}
}
}
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11