如何给一个私有方法做单元测试
2013-07-18 18:05
567 查看
给类的公有方法做单元测试,很简单,new一个对象,设好入口参数后,调用这个方法,比较期望值和实际值即可。给一个类的私有方法做单元测试,也不麻烦,先通过反射获取这个方法,然后将这个方法的可访问性强制设为true,这样的话,这个私有方法就可以被调用了。
目标方法:
单元测试:
目标方法:
private Double format(Double fileSize){ Double size = fileSize; size = size / 1024 / 1024; size = (int)(size.doubleValue() * 10 + 0.5) / 10.0; return size; }
单元测试:
@Test public void testFormat(){ ClientDownloadAction action = new ClientDownloadAction(); double size = 3732930; Class class1 = action.getClass(); try { Method format = class1.getDeclaredMethod("format", Double.class); format.setAccessible(true);//设为可见 Double result = (Double)format.invoke(action, size); Double expect = 3.6; Assert.assertEquals(expect, result); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }
相关文章推荐
- 如何给一个私有方法做单元测试
- 在单元测试中如何测试私有方法
- 在单元测试中如何测试私有的方法
- 如何利用反射去访问一个私有的方法
- vs.2008中如何对抽象类私有方法进行单元测试
- vs.2008中如何对抽象类私有方法进行单元测试
- 如何在VS中测试一个抽象类中的私有方法
- 如何通过java反射的方式对java私有方法进行单元测试
- 如何对私有方法进行单元测试?(依据推荐等级排序)
- vs.2008中如何对抽象类私有方法进行单元测试
- 如何利用反射去访问一个私有的方法
- 如何通过创建一个Fraction类(分数)来实现分数的加减乘除,比较大小、约分等方法(方法的实现部分)
- java进阶之反射:反射基础之如何获取一个类以及如何获取这个类的所有属性和方法(2)
- 在Java中如何用String类中的indexof方法得到一个词的出现频率
- 如何制作一个 https 网站?IIS配置HTTPS服务的方法
- 如何用正则将多个空格看成一个空格结合spllit()方法将文本数据入库
- 如何向一个Fragment传递参数---setArguments方法的介绍
- Android Studio中单元测试某个类中的一个方法
- C#反射调用另外一个类中的私有字段和方法
- 在开发过程,如何记录事件?记录事件有哪些方法?举一个例?