小编che*_*048的帖子

为什么我无法在Android Studio中导入java.util.function包?

在Android Studio 2.0 Beta 7中,我可以在java.util.function.Consumer中看到这个类"Consumer". 在此输入图像描述

但我无法在Android Studio中导入它,为什么?我在Gradle中完成了以下这些方法.我确信我使用的是Java8,因为我可以在接口中使用default关键字,这是Java8中的新功能.

谁能告诉我原因?java.util.stream包也发生了这种现象.

在gradle中:

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}
Run Code Online (Sandbox Code Playgroud)

java android

3
推荐指数
1
解决办法
1582
查看次数

我该如何模拟和测试这门课?

以下是我想测试的代码.

public class Demo {

   private static final List<Pair<String, String>> mList;

   static {
     mList = new ArrayList<>();
     mList.add(new Pair<>("F0", "T1"));
     mList.add(new Pair<>("F1", "T2"));
     mList.add(new Pair<>("F2", "T3"));
   }

   public String getStr(int pos) {
     return mList.get(pos).first;
   }
}
Run Code Online (Sandbox Code Playgroud)

我是一个Android开发人员.我在测试和模拟代码时遇到了一些麻烦.我使用了mockito.我已经尝试了一些代码来测试它,但结果并不是我的期望.

1.第一次尝试

@Test
public void test(){
    Demo demo=new Demo();
    assertEquals(demo.getStr(0),"F0");
    /**
    *  java.lang.AssertionError: 
    *  Expected :null 
    *  Actual   :F0
    */
}
Run Code Online (Sandbox Code Playgroud)

2.第二次尝试

@Test
public void test() {
    Demo demo = mock(Demo.class);

    doCallRealMethod().when(demo).getStr(0);
    assertEquals(demo.getStr(0), "F0");
    /**
     *  java.lang.AssertionError: 
     *  Expected :null
     *  Actual   :F0
     */ …
Run Code Online (Sandbox Code Playgroud)

android unit-testing mockito

3
推荐指数
1
解决办法
1329
查看次数

标签 统计

android ×2

java ×1

mockito ×1

unit-testing ×1