Я только начал пытаться настроить некоторые модульные тесты в том, что по сути является моим первым приложением для Android. У меня было время найти ресурс для этого, но в конечном итоге смог соскоблить то, что я надеялся, это правильный путь вперед.
Во-первых, это то, что я сделал.
В Eclipse я щелкнул правой кнопкой мыши мой проект, для которого я хотел бы создать тестовый проект. Я выбрал AndroidTools → Новый тестовый проект Я заполнил необходимую информацию, выбрав местоположение.. /MyApp/tests для нового проекта и выбрав MyApp в качестве тестируемого проекта. Все остальное было оставлено по умолчанию.
Пока это выполнялось, я получил следующее сообщение:
[2011-04-01 08:13:02 - WPMSTest] R.java был изменен вручную! Возврат к сгенерированной версии!
Но все было в порядке. У меня появилось новое исходное дерево в папке моих тестов.
Итак, я попытался выполнить его (сначала на аппаратном обеспечении, а затем на эмуляторе) с помощью RunAs → Android jUnit test.
В обоих забегах я получил ниже в консоли eclipse:
[2011-04-01 08:23:04 - WPMSTest] Запуск инструментария android.test.InstrumentationTestRunner на эмуляторе устройства-5554
[2011-04-01 08:23:04 - WPMSTest] Не удалось запустить тест
Мои два файла манифеста:
WPMSTest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.WPMS.test"
android:versionCode="1"
android:versionName="1.0">
<instrumentation android:targetPackage="com.WPMS" android:name="android.test.InstrumentationTestRunner" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<uses-library android:name="android.test.runner" />
</application>
WPMS:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.WPMS"
android:versionCode="1"
android:versionName="1.0">
<application android:label="@string/app_name" android:icon="@drawable/ic_launcher_wpms">
<activity android:name=".WPMS"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Я надеюсь, что кто-то видел что-то подобное раньше и может пролить свет на то, что я делаю неправильно. Пожалуйста, дайте мне знать, если вам нужны дополнительные файлы, и я обязательно отправлю их.
Спасибо!