返回顶部

收藏

java unit test Mock框架jMockit示例教程 - Mock final的类和方法

更多

mockit以外的其它mock实现都不能mock final的类和final方法,本例子示範mock final的类和final的方法。

package cn.outofmemory.jmockit.target;  

/** 
 * 只有一个final方法的final类,用于示例可以进行final方法的mock 
 *  
 * @author Ginge 
 *  
 */  
public final class FinalClassNMethod {  
    public final String getRealName(String memberId) {  
        return "you";  
    }  
}  

mock 代码

package cn.outofmemory.jmockit.sample;  

import jmockit.target.FinalClassNMethod;  
import junit.framework.Assert;  
import mockit.Expectations;  
import mockit.Mocked;  

import org.junit.Test;  

/** 
 * jmockit以外的其它mock实现都不能mock final的类和final方法,本例子示範mock final的类和final的方法。 
 * @author Ginge 
 *  
 */  
public class FinalClassNMethodTest {  
    @Mocked//这是一个final类  
    private FinalClassNMethod FinalClassNMethod = null;  

    @Test  
    public void mockFinal() {  

        new Expectations() {  
            {  
                FinalClassNMethod.getRealName(withAny(""));  
                result = "FinalClassNMethod";  
            }  
        };  

        Assert.assertEquals("FinalClassNMethod", FinalClassNMethod  
                .getRealName(""));  

    }  
}  

标签:jMockit,jUnit,单元测试,Mock,java

收藏

0人收藏

支持

0

反对

0

发表评论