Подготовка контекста целевого тестового приложения к тестированию

#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. К сожалению, это не сработает. Экземпляр приложения будет создан до запуска действия в любом случае.