2012-11-05 2 views
1

Я тестирую базу данных с использованием суперкласса ProviderTestCase2. Вот мой фрагмент кода:Android ProviderTestCase2: не работает в режиме запуска, переходит в режим отладки

public class MyProviderTest extends ProviderTestCase2<MyProvider>{ 

    private static MockContentResolver resolver; 
    private static IsolatedContext context; 
    public MetaDataProviderTest() { 
    super(MyProvider.class, Provider.AUTHORITY); 
} 


@Override 
protected void setUp() throws Exception { 
    try{ 
     super.setUp(); 
     resolver = getMockContentResolver(); 


    } catch(Exception e){ 

    } 

} 


} 

    public void testfirst(){ 

    Cursor cursor = resolver.query(ProviderContract.Channels.CHANNEL_URI,null,null,null,null); 
     .... 
    } 
    } 

Когда я отлаживаю приведенный выше код, я получаю полученный результат. Когда я запускаю его, я получаю курсор Null, подразумевая, что нет такой таблицы, как канал. Пожалуйста, помогите в решении этого. Где я неправ?

ответ

0

Был гонка состояние. Введена задержка в Setup(). Он работает нормально. Но я не знаю, является ли это точным решением.

0

вы должны написать код:

MockContentResolver.addProvider(authority, yourprovider); 

затем попробовать

 Смежные вопросы

  • Нет связанных вопросов^_^