Я хочу создать резервную копию базы данных приложений, прежде чем заменять ее тестовым прибором. Я вынужден использовать Junit3 из-за ограничений Android, и я хочу реализовать эквивалентное поведение @BeforeClass @AfterClass.
UPDATE: теперь есть инструмент (Junit4Android), чтобы получить поддержку для Junit4 на Android. Это немного клочья, но он должен работать.
Чтобы достичь эквивалента @BeforeClass, я использовал статическую переменную и инициализировал ее во время первого запуска, как это, но мне нужно иметь возможность восстановить базу данных после запуска всех тестов. Я не могу придумать способ обнаружения, когда последний тест был запущен (так как я считаю, что нет гарантии в порядке выполнения теста.)
public class MyTest extends ActivityInstrumentationTestCase2<MainActivity> {
private static boolean firstRun = true;
@Override
protected void setUp() {
if(firstRun) {
firstRun = false;
setUpDatabaseFixture();
}
}
...
}