Sqr*_*764 4 java android integration-testing android-contentprovider
不久前,我使用ProviderTestCase2创建了一些检测测试。现在,我想更新我的代码库,并尝试在当前环境中重新激活旧的测试。
1)当我更新为compileSdkVersion 28时,似乎不再有任何类ProviderTestCase2。清理和构建项目失败。如果我回到版本27,则可以成功构建该项目。
2)我有一种特殊情况,我想用一组测试来测试对象的不同变体。因此,我决定利用继承并将测试放在基类中,配置要由超类测试的对象。这过去曾经奏效。(是的,我知道关于测试中的继承是不好的观点,但是在这种情况下,它是可以的;-))
现在不执行任何测试。Android Studio抱怨说有一个空的测试套件。
也有警告,我在扩展JUnit3的类中使用JUnit4注释进行了测试。我不记得我曾经看过这些警告。
这是Android库中的错误吗?或在哪里可以找到解决此问题的提示?
(使用Android Studio 3.2和最新的库)
ProviderTestCase2 已删除。在ProviderTestRule应使用(从支撑测试库或AndroidX)。
看到:
添加com.android.support.test:rules依赖项,以便能够使用规则。
这是参考页中的示例:
@Rule
public ProviderTestRule mProviderRule =
new ProviderTestRule.Builder(MyContentProvider.class, MyContentProvider.AUTHORITY).build();
@Test
public void verifyContentProviderContractWorks() {
ContentResolver resolver = mProviderRule.getResolver();
// perform some database (or other) operations
Uri uri = resolver.insert(testUrl, testContentValues);
// perform some assertions on the resulting URI
assertNotNull(uri);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
768 次 |
| 最近记录: |