2013-04-11 1 views
1

При написании тестового примера для Android, как я могу вызвать некоторые методы для моего объекта приложения до создания действия? Мой тестовый класс расширяет ActivityInstrumentationTestCase2.Тестирование на Android: как изменить приложение до создания actvity?

Некоторые из вещей, которые я пробовал это

  • Ищет метод моего тестовый случай может переопределить. Я его не вижу.
  • Создание тестовой активности, которая расширяет активность приложения. Я не думаю, что могу это сделать, не добавляя тестовую активность к манифесту реального приложения.
  • Получение приложения внутри метода setUp() моего теста. Я не могу найти способ доступа к приложению без предварительного создания операции

ответ

2

Вы не можете делать то, что вы пытаетесь сделать. ActivityInstrumentationTestCase2 не предназначен для этого. Вам нужно что-то вроде Robotium, которое может сначала вызвать ваш объект приложения, прежде чем будет создан объект Activity.

ActivityInstrumentationTestCase2, за исключением нескольких случаев, предназначен для проверки вещей в пределах Деятельность, а не ее взаимодействие с вещами вне деятельности. Тестирование устройств в Android не является совершенным.

Я также сомневаюсь, почему вам нужно что-то из приложения. Всякий раз, когда кто-то упоминает Приложение, в голове загорается предупреждающий свет. Я редко вижу код, который использует приложение, и 90% времени разработчик должен был использовать что-то еще.

+0

+1 для последнего абзаца. – CommonsWare

+0

Можете ли вы объяснить, как решить проблему с помощью Robotium? Причина, по которой мне нужно что-то из приложения, в том, что приложение, которое я тестирую, реализовало некоторые важные функции в подклассе приложения. Я должен правильно настроить это, чтобы убедиться, что активность ведет себя одинаково при каждом запуске теста. –