Создать / создать файл в Android-приложении

У меня есть класс, который создает (или открывает) файл для записи на него некоторых данных. Этот класс получает Контекст в конструкторе, сохраняет его в поле экземпляра, а затем использует его для вызова метода context.openFileOutput.

При запуске приложения я создаю экземпляр этого класса, передавая ApplicationContext как контекст, и все работает так, как ожидалось.

Однако, когда я пытаюсь протестировать этот класс с помощью теста Instrumentation, я получаю NullPointerException . Я getInstrumentation().getContext() контекст getInstrumentation().getContext() , который, как мне известно, соответствует контексту теста, а не одному из реальных приложений.

 getInstrumentation().getContext().openFileOutput("myFile", Context.MODE_PRIVATE); // This throws NullPointerException :( :( 

В рамках теста мне нужно, чтобы этот файл был создан в тестовом пакете, а не в пакете приложений, так как я не хочу перезаписывать файл в своем приложении.

Я знаю, что есть класс RenamingDelegatingContext, но я не могу передать этот контекст в свой класс, так как мой класс также открывает исходный ресурс, и я хочу, чтобы этот ресурс был другим при запуске теста (что-то вроде издевавшегося ресурса).

Я много искал об этом, и нет документации о Контексте Инструментария. Я не мог найти никаких ограничений и ничего, что могло бы решить мою проблему.

Вы знаете, как справиться с этим?

Solutions Collecting From Web of "Создать / создать файл в Android-приложении"