android 单元测试出现错误及改正

发表于:2013-7-15 11:03

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:luran_fighting    来源:51Testing软件测试网采编

  1.Test run failed:Instrumentation run failed due to 'java.lang.ClassNotFoundException'

  原因是找不到单元测试的类,后来经过仔细看代码及网上查找终于解决,现在记录下来便于以后查找解决办法,问题简单下次就记得了,但是做的项目多了,问题也多了就易忘记或遗漏,好记性不如烂笔头真的一点不错。从头再来,遇到问题就记录下来。

  解决方法:打开androidmanifest.xml文件在<activity>  ****   </activity>之间加上配置

<!-- 单元测试配置 -->
<uses-library android:name="android.test.runner" />

   别忘了导入junit4包

  2. Caused by: java.lang.ClassNotFoundException: android.test.InstrumentationTestRunner in loader dalvik.system.PathClassLoader[/data/app/tyrj.lr.sqliteapply-1.apk:

  解决办法:在androidmanifest.xml文件的</application>标签之前加上

<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="tyrj.lr.sqliteapply" >

  这里的包设置和此xml文件的最上面的Package设置相同

  </instrumentation>

  3.android.content.res.Resources$NotFoundException: String resource ID

  在执行sqlite查询数据操作时出现错误,通过错误信息找到错误代码行,原来是利用cursor游标获得Int 类型的数据没有转换,编译器没通过,不能得到游标获取到的值。

  错误行: int id = cursor.getColumnIndex("id");

  int age = cursor.getColumnIndex("age");

  解决:

int id = cursor.getInt(cursor.getColumnIndex("id"));
int age = cursor.getInt(cursor.getColumnIndex("age"));

  这两天出现的错误可不少,一些知识都忘了,哎真是一天不学习就忘得一干二净,这样的小错误一而再再而三的错,希望记载下来,以后出现的错误就不再错了,祈祷!!!

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号