加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

针对Sqlite进行单元测试出现的问题

发布时间:2020-12-12 19:20:27 所属栏目:百科 来源:网络整理
导读:单元测试是一个很好的工具,既可以从测试的角度检视自己代码逻辑,也可以找出代码中不易发现的bug.Android项目中的单元测试工具有很多,Junit,Mockito,Robolectric等,针对UI和其他逻辑搭配来使用,相关资料很多,大家可以自行搜集.我推荐两个人的吧,从他俩的博客

单元测试是一个很好的工具,既可以从测试的角度检视自己代码逻辑,也可以找出代码中不易发现的bug.Android项目中的单元测试工具有很多,Junit,Mockito,Robolectric等,针对UI和其他逻辑搭配来使用,相关资料很多,大家可以自行搜集.我推荐两个人的吧,从他俩的博客里受益匪浅.

  1. 小创 一个蘑菇街出来的Android开发,单元测试以他写的文章入门最好不过了.

  2. 键盘男 悦跑圈Android开发,他的代码唯一的缺点就是不带github!不过文章质量挺高的,特别是针对Android各项功能的单元测试都有.

    其实今天的主题是我在做Sqlite的单元测试的时候碰到一个IllegalStateException,异常具体内容如下:

java.lang.RuntimeException: java.lang.IllegalStateException: Illegal connection pointer 1. Current pointers for thread Thread[pool-4-thread-1,5,main] 
//......

初看之下是线程之间的冲突,遂搜索之,找到这个链接,大致意思是 某个测试用例执行数据库之后没有执行关闭操作,然后下一个测试用例打开的时候出现错误,所以文章给出的做法是,@After注解一个关闭数据库的方法,代表每一个测试用例后都执行一次这个注解方法

我的做法是在Dao类里的每一个CRUD方法后都主动加上closeDatabase方法,这样就不需要在测试用例后再加After注解了.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读