2013年9月30日
摘要: Java中的native修饰符今天偶然看代码,发现别人有这样写的方法,并且jar里面有几个dll文件,比较奇怪,于是把代码打开,发现如下写法。public native String GSMModemSMSReadAll(String s, int i);public native String GSMModemGetErrorMsg(String s);public native boolean GSMModemIsConn(String s);觉得挺有趣的,找了找网络上的资料,感觉不错。又一个使用java调用别的语言的方法(以前不知道-_#)今天花了两个小时把一份关于什么是Native M 阅读全文
posted @ 2013-09-30 10:49 啸天雨 阅读(1965) 评论(0) 推荐(2) 编辑
  2013年9月25日
摘要: 当我们在测试一个方法的构造方法的时候,有的时候内部需要new一些对象,这是就需要用到PowerMock。exceptNew(),这个方法,但有时候传的参数有关键字this,比如SAPPublisherSvc server = new SAPPublisherSvc(sdkApp, this, curInt, factory, tidHandler);由于我们是在测试构造方法,所以这个类的对象还没有,那么this处应该填EasyMock,isA(测试类名.class),而其他的参数都应该加上EasyMock.same(参数),比如上面的测试语句就是PowerMock.expectNew(SAPP 阅读全文
posted @ 2013-09-25 18:15 啸天雨 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 如果我们要测试的类继承另一个类,而且在构造方法中有super();那么怎么Mock那个super语句呢?在PowerMock中有一个suppressConstructor方法,具体写法如下:PowerMock.suppressConstructor(继承的类名.class); 阅读全文
posted @ 2013-09-25 11:17 啸天雨 阅读(614) 评论(0) 推荐(0) 编辑
  2013年9月6日
摘要: 在用WhiteBox调用对象的私有方法时,如果要传的参数为空,如果直接在参数列表中写null的话,可能会报空指针异常,可以定义一个变量使他等于空,再把变量传进去就可以了。 阅读全文
posted @ 2013-09-06 11:36 啸天雨 阅读(350) 评论(0) 推荐(0) 编辑
  2013年9月4日
摘要: 如果在测一个类的某一个方法时,这个方法还调用了此类的其他方法,那么如何指定其他方法的返回值呢?Partial mock local private method or public method in the class and suppress static initial block publicclassCalc{static{System.out.println("hahaha");}publicintadd(inta,intb){returninterADD(a,b);}privateintinterADD(inta,intb){returna+b;}public 阅读全文
posted @ 2013-09-04 09:09 啸天雨 阅读(1432) 评论(0) 推荐(0) 编辑
  2013年9月2日
摘要: 遇到问题:再用PowerMock Mock构造方法时,所有语句都可以通过执行,但当最后执行verify语句时却总是出现如下错误: java.lang.AssertionError: Unexpected method call InvocationSubstitute.performSubstitutionLogic(EasyMockforclass解决办法:其实也没有发现什么比较管用的方法,我的解决办法是把PowerMock换成PowerMockito就好使了。 阅读全文
posted @ 2013-09-02 09:41 啸天雨 阅读(329) 评论(0) 推荐(0) 编辑
  2013年8月29日
摘要: 首先使用PowerMock Mock对象如果不成功的话首先要检查在测试类上是否有这两个声明@RunWith(PowerMockRunner.class) @PrepareForTest({里面填需要用PowerMock的类})其次如果加上声明后还不好使的话,看看是忘记写reply和verfy语句再有错的话就自己Debug程序自己具体问题具体分析吧!!!注意:如果要用PowerMock,一定要在 @PrepareForTest中写上你正在测试的类名,要不然PowerMock会无效的。 阅读全文
posted @ 2013-08-29 14:39 啸天雨 阅读(1153) 评论(0) 推荐(0) 编辑
摘要: 1:PowerMock.expectNew(Class type, Class[] parameterTypes, Object... arguments)如果你要Mock的类有多个构造方法,在你exceptNew的时候会要求你指定参数类型,此时就会用到上面说的方法其中第二个为参数类型如果参数是String类型parameterTypes应该填new Class[]{String.class} 如果有多个参数,在大括号内按顺序添加。2:当我们要测的类的构造方法是private的或者是protected的的时候,要想调用构造方法的时候就要用到Whitebox.invokeConstructor( 阅读全文
posted @ 2013-08-29 10:25 啸天雨 阅读(1748) 评论(0) 推荐(0) 编辑
  2013年8月19日
摘要: Leader请求在做Junit测试的时辰,Mock掉各个办法之间的依附。这两天进修了下PowerMock的应用。 PowerMock是EasyMock的一个扩大,参加了static,final,private,以及constructor的Mock功能。然则PowerMock并没有持续EasyMock的一些测试功能,所以不克不及庖代EasyMock,而零丁应用。在很多时辰必必要PowerMock和EasyMock彼此连络,以及加上WhiteBox,才干更好实现测试。 1. 必不成少的一步:添加测试运行器@RunWith(PowerMockRunner.class),若是没有添加这个运行器,... 阅读全文
posted @ 2013-08-19 09:45 啸天雨 阅读(1235) 评论(0) 推荐(0) 编辑
  2013年7月31日
摘要: 就不费劲转过来了https://www.ibm.com/developerworks/cn/opensource/os-cn-easymock/这上面介绍的比较全。 阅读全文
posted @ 2013-07-31 16:50 啸天雨 阅读(227) 评论(0) 推荐(0) 编辑