2013-04-12 5 views
4

я создал тестовый проект с точно таким же кодом, как показано здесь:Android тесты не выполняются

http://developer.android.com/tools/testing/testing_ui.html

Я загрузил файл банки в андроиде виртуального устройства, и теперь я готов выполните тесты. Но я всегда получаю этот вывод на консоль:

INSTRUMENTATION_STATUS: stream=

Test results for WatcherResultPrinter=

Time: 0.0

OK (0 tests)

INSTRUMENTATION_STATUS_CODE: -1


Я также создал простой тест с помощью следующего кода:

public void FailedTest() throws UiObjectNotFoundException { 
    assertTrue("This test was executed", false); 
} 

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

Имя пакета Tests и имя класса Login поэтому я выполнить следующую команду:

adb shell uiautomator runtest TestProject.jar -c Tests.Login

Редактировать

Когда я запускаю его на реальном устройстве я получаю:

uiautomator: permission denied

ответ

3

В качестве первого шага вы можете изменить имя метода тестирования в соответствии с используемым стандартным соглашением в jUnit 3 i.e public void testWhatever() { ... } первые 4 буквы имени nust должны быть «test» в нижнем регистре, подпись является общедоступной, а метод не принимает никаких параметров.

Аналогичным образом, вы можете изменить имя пакета на более стандартное правило нижнего регистра, например. org.example.tests Если файл называется Tests.java (и класс также называют тесты), то вы должны быть в состоянии назвать его следующим образом:

adb shell uiautomator runtest Tests.jar -c com.example.tests.Tests

Если это не поможет, пожалуйста, может вы пересматриваете вопрос, чтобы включить весь код из вашего файла Tests.java?

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

Я буду следить за uiautomator: permission denied отдельно. Тесты UI Automator работают на реальных устройствах. Им не нужно, чтобы устройство было внедрено. Я запускаю их на стандартных устройствах Android 4.2.x.

+0

Когда я изменил пакет и имя метода тестирования, тест был выполнен. Большое спасибо. – Schaliasos

+0

Хорошая новость; и они тоже работали на реальном устройстве? – JulianHarty

+0

Мое устройство не внедрено. Я также включил отладку usb. Возможно, это версия для Android (в настоящее время она проверена только на 2.3.x). Я дам ему попробовать на android 4. Спасибо за вашу помощь. – Schaliasos