库测试:如何创建上下文?

library test: how to create a Context?

Android库测试:如何创建Context?例如

src/main/java
src/androidTest/java

android 库(主要源代码集)使用 android sqlite 数据库,但没有任何活动。 SQLiteOpenHelper 需要一个上下文来创建。

class MySQLiteOpenHelper extends SQLiteOpenHelper {
    MySQLiteOpenHelper(Context context, String database, int version) {
        super(context, database, null, version);
    }
}

如何创建用于测试的上下文?如何将 Context 传递给 androidTest 下的 junit 测试?例如

@Runner(Parameterized.class)
public class FooTest {
    @Test
    public void testFoo() {
        // how to get a Context instance?
        MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context, "test.db", 1);
        ...
    }
}

How to create a Context for testing?

调用 InstrumentationRegistry.getTargetContext() 获取正在测试的应用程序或模块的 Context