Я написал своего поставщика контента, который должен обеспечивать доступ к 2 таблицам в базе данных SqlLite. Теперь я хотел бы написать несколько тестовых примеров для этого, но я никогда этого не делал. Прочитав раздел руководства разработчика, должен сказать, что мне не удалось ничего протестировать.
Вот мой код на данный момент. Это единственный класс в тестовом проекте, который соответствует моему основному проекту. Когда я выполняю его в Eclipse, эмулятор запускается правильно, пакеты устанавливаются, но тест не запускается:
Тестовый запуск завершился неудачно: Тестовый запуск не завершен. Это единственный класс в тестовом проекте, который соответствует моему основному проекту. Когда я выполняю его в Eclipse, эмулятор запускается правильно, пакеты устанавливаются, но тест не запускается:
Тестовый запуск завершился неудачно: Тестовый запуск не завершен. Это единственный класс в тестовом проекте, который соответствует моему основному проекту. Когда я выполняю его в Eclipse, эмулятор запускается правильно, пакеты устанавливаются, но тест не запускается:
Тестовый запуск завершился неудачно: Тестовый запуск не завершен. Ожидается 1 тест, получено 0
Вот тестовый класс:
public class ArticleProviderTest extends ProviderTestCase2<ArticleProvider> { static final Uri[] validUris = new Uri[] { Articles.CONTENT_URI, Pictures.CONTENT_URI, Pictures.getContentUriForArticleId(1) }; public ArticleProviderTest(Class<ArticleProvider> providerClass, String providerAuthority) { super(providerClass, providerAuthority); } @Override protected void setUp() throws Exception { super.setUp(); } public void testQuery() { ContentProvider provider = getProvider(); for (Uri uri : validUris) { Cursor cursor = provider.query(uri, null, null, null, null); assertNotNull(cursor); } } }
И файл манифеста, если он помогает:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="fr.marvinlabs.xxxx" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="7" /> <instrumentation android:targetPackage="fr.marvinlabs.xxxx" android:name="android.test.InstrumentationTestRunner" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <uses-library android:name="android.test.runner" /> </application> </manifest>
Когда я запускаю в конфигурации отладки, точки останова в конструкторе и в setUp не запускаются . ?!
Я тоже не нашел много информации в сети. Может ли кто-нибудь помочь мне понять, как должно быть настроено тестирование (в основном создать файл тестовой базы данных, заполнить его некоторыми данными, запросить его ...)?