RenamingDelegatingContext
全部标签 一段时间以来,我一直在努力解决Android上的单元测试问题。我的应用程序使用Sqlite数据库来存储车辆的详细信息。我最近添加了ContentProvider模式来检索数据(以前直接访问数据库)。该应用程序运行良好,但我的测试在eclipse上以“运行”模式运行时偶尔会失败-它们以“调试”模式通过。在我的setUp()方法中,我创建了一个RenamingDelegatingContext以创建我的数据库的测试版本。所有这一切都是前缀“测试”。到我的数据库的名称,以确保测试代码不会触及“真实”数据库。然后,我将其传递给“数据提供者”类以作为实例变量保留,直到第一次调用getWritea
根据https://stackoverflow.com/a/13556184/3286489,我们可以使用RenamingDelegatingContext来帮助Android开发的SQLiteDB单元测试。然而,在API级别24开始时,androiddoc宣布现在已弃用。那么我们可以用什么新方法来替换RenamingDelegatingContext? 最佳答案 如果targetSdkVersion28,您必须将以下内容添加到模块的build.gradle:android{...//Gradleautomaticallyadds'
根据https://stackoverflow.com/a/13556184/3286489,我们可以使用RenamingDelegatingContext来帮助Android开发的SQLiteDB单元测试。然而,在API级别24开始时,androiddoc宣布现在已弃用。那么我们可以用什么新方法来替换RenamingDelegatingContext? 最佳答案 如果targetSdkVersion28,您必须将以下内容添加到模块的build.gradle:android{...//Gradleautomaticallyadds'
我已经使用SQLiteOpenHelper在某些类中的android.database包中实现了对数据库的访问(使用模式DAO)。我使用AndroidTestCase为这些类编写了一些junit测试,但这会导致测试使用与应用程序相同的数据库。我读到ProviderTestCase2或RenamingDelegatingContext可用于单独测试数据库。不幸的是,我找不到任何很好的教程/示例来展示如何使用ProviderTestCase2/RenamingDelegatingContext测试数据库。谁能给我指点或给我一些提示或分享一些用于数据库测试的代码?!欢呼!乔治