JMockit使用实例<二>mock private的域或方法

[*]关键词:mock private的域或方法 invoke
[*]源类清单<br>    参考<一>的例子,now方法是私有的
/** * 演示mock private的域或方法 */public class dateutil {    ......    private int count;    public int getcount(){      return this.count;    }    private static final date now() {        return new date();    }    ......}
[list][*] 单元测试类清单
[/list]
/** * 演示mock private的域或方法 */public class dateutiltest {    /**     * mock某个类私有方法     */    @test    public void testgetcurrentdatestr() {        //dateutil.class,要mock的类        new expectations(dateutil.class) {            {              //执行dateutil的now方法                invoke(dateutil.class,"now");              //期望方法返回的结果                result = mockdate();            }        };        assert.assertequals("2010-07-22 15:52:55", dateutil.getcurrentdatestr());    }    /**    * mock 某个类的私有属性    */    @test    public void testprivatefiled() {        final dateutil dateutil =new dateutil();        new expectations(dateutil){            {                this.setfield(dateutil, "count", 2);            }        };        assert.assertequals(2, dateutil.getcount());    }
 
[*]小结<br>mock 某个类的私有方法,用invoke(mock的类或实例,方法名,方法的参数列表)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值