Я новичок в Android Studio. Я использую Android Studio 1.2 Preview 2, gradle 2.2.1 и gradle plugin 1.1.0.
Я не могу обойти эту ошибку при попытке выполнить мои модульные тесты:
java.lang.RuntimeException: Method getInstrumentation in android.test.InstrumentationTestCase not mocked
Это мой тестовый класс:
public class AppPreferencesTest extends InstrumentationTestCase {
AppPreferences preferences;
@Before
public void setUp() throws Exception {
preferences = new AppPreferences(getInstrumentation().getTargetContext());
}
...
В моем файле build.gradle:
testCompile 'junit:junit:4.12'
Я попытался добавить это
testOptions {
unitTests.returnDefaultValues = true
}
потому что это было упомянуто в шагах, которые я выполнил в http://tools.android.com/tech-docs/unit-testing-support но это не исправляет.
Я также попытался создать MockContext:
preferences = new AppPreferences(new MockContext());
но конструктор AppPreferences, чем дает ошибку
public AppPreferences(Context context) {
preferences = PreferenceManager.getDefaultSharedPreferences(
context);
}
...
RuntimeException: Method getDefaultSharedPreferences in android.preference.PreferenceManager not mocked.