#android #robotium #android-testing
#Android #robotium #android-тестирование
Вопрос:
У меня есть приложение для Android и тестовый проект, в котором выполняются некоторые модульные тесты и автоматические тесты пользовательского интерфейса с использованием Robotium. Я хочу убедиться, что контекст целевого приложения находится в определенном состоянии перед запуском каждого теста. Обычно это делается в методе setUp() тестового класса.
Экземпляр приложения целевого приложения выполняет некоторую работу по инициализации на основе некоторых значений в общем хранилище префиксов. Я хочу убедиться, что эти значения установлены в соответствии с потребностями моего тестового проекта.
Проблема в том, что метод onCreate() экземпляра целевого приложения выполняется перед методом setUp() . Таким образом, значения из метода setUp() теста не принимаются во внимание. Как правильно выполнить эту работу по инициализации?
Ответ №1:
Один из способов добиться этого — создать FakeTestOnlyActivity
выполнение всех onCreate
операций инициализации перед вызовом super.onCreate()
:
public FakeTestOnlyActivity extends ActivityToTest {
public void onCreate(Bundle savedInstanceState){
//do initialization
...
super.onCreate(savedInstanceState);
}
}
Комментарии:
1. К сожалению, это не сработает. Экземпляр приложения будет создан до запуска действия в любом случае.