Java Jmockit:Can';t mock方法toString的net.android.Uri类
IDE:androidstudio 2.2.2 | Jmockit:2.1 | Java:1.8.0 | u102-b14 我试图模拟net.android.Uri类的toString()方法。该类上的所有方法都可以模拟OK,但toString()方法除外Java Jmockit:Can';t mock方法toString的net.android.Uri类,java,android,junit,jmockit,Java,Android,Junit,Jmockit,IDE:androidstudio 2.2.2 | Jmockit:2.1 | Java:1.8.0 | u102-b14 我试图模拟net.android.Uri类的toString()方法。该类上的所有方法都可以模拟OK,但toString()方法除外 @测试 public void方法(@Mocked final Uri)引发异常{ 新的非严格测量(){ { getHost(); 结果=“sendViewLog”; getAuthority(); result=“getAuthority”
@测试
public void方法(@Mocked final Uri)引发异常{
新的非严格测量(){
{
getHost();
结果=“sendViewLog”;
getAuthority();
result=“getAuthority”;
getEncodedFragment();
结果=“getEncodedFragment”;
getPort();
结果=8080;
uri.toString();//开发者的回答:
是的,只能模拟实现的(带有主体,而不是抽象的)toString()方法
@Test
public void method(@Mocked final Uri uri) throws Exception {
new NonStrictExpectations() {
{
uri.getHost();
result = "sendViewLog";
uri.getAuthority();
result = "getAuthority";
uri.getEncodedFragment();
result = "getEncodedFragment";
uri.getPort();
result = 8080;
uri.toString(); // <-------
result = "helloWorld";
}
};
sut.method();
}