广告
返回顶部
首页 > 资讯 > 移动开发 >Android日志输出、单元测试
  • 232
分享到

Android日志输出、单元测试

单元输出单元测试测试Android 2022-06-06 12:06:41 232人浏览 薄情痞子
摘要

  Android日志输出、单元测试   由于这几天睡得晚,导致第二天都没有精神,还晕晕的听课,效率低,我不能熬夜了。下面我来讲讲学习的知识点吧。   一、 

  Android日志输出、单元测试   由于这几天睡得晚,导致第二天都没有精神,还晕晕的听课,效率低,我不能熬夜了。下面我来讲讲学习的知识点吧。   一、    单元测试   有了测试以后我们遇到bug的时候好解决了。   单元测试需要以下几步:   1.  首先要在AndroidManifest.xml中加入如下代码:   <uses-library android:name=”android.test.runner”/>   这行代码必须只能放在<application></ application>元素之内,与<activity></activity>平级。   <instrumentation android:name=”android.test.InstrumentationTestRunner”   Android:targetPackage=”cn.class3g.action”android:label=”Tests for My App”>   这行代码放在<manifest></manifest>之中。这里的targetPackage指定的包和应用的package相同。如果不相同,会出现找不到单元测试用例的错误。   2. 编写单元测试代码  测试类必须继承自AndroidTestCase类。   3. 执行测试   让我们来看一个具体的测试项目的实现吧:   1.  创建项目:   创建名为JunitTest的项目   2.在功能清单文件中配置单元测试环境;   打开功能清单文件,添加上面所述的代码,终代码如下;

 

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="Http://schemas.android.com/apk/res/android" package="cn.class3g" android:versionCode="1" android:versionName="1.0" > <uses-sdkandroid:minSdkVersionuses-sdkandroid:minSdkVersion="10" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <uses-library android:name="android.test.runner"/> <activity android:label="@string/app_name" android:name=".JunitHaoActivity" > <intent-filter > <action android:name="android.intent.action.MaiN"/> <cateGory android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application> <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="cn.class3g" android:label="Tests/> </manifest>

  新建测试用例   首先在项目位置,右击新建一个UserTests类,在创建这个类的时候要继承AndroidTestCase类;   注意:如果测试方法内部遇到异常,建议直接抛出,而不要捕获异常。异常抛出后会被测试框架获取,之后在控制台显示出来,方便我们了解异常信息。   集体的类文件如下:

 

package cn.class3g; packagecom.sharpandroid.unitandlog; import junit.framework.Assert; import android.test.AndroidTestCase; import android.util.Log; public classUserTest extends AndroidTestCase{ private static final StringTAG = "MyTest"; public void testSave()throws Throwable{ int i= 4+8; Assert.assertEquals(5,i); } }

  Assert类在此的作用是判断所得到的结果与期望值的关系。这里判断i是否等于5。如果相等则通过,不相等,则抛出异常。   运行测试用例:   首先要进入大纲视图(outline),如果默认的界面中没有的话,可以通过以下步骤:   window-----showView----outline   可以了!   在大纲视图中找到自己的测试类,然后展开,找到集体的方法,然后选定右击,选择Run as----Android Junit Test 可以了;   观看结果条,如果是红色说明没有通过,代码有问题,如果是绿色说明测试通过了。

  二、日志输出   我们在开发Android应用时,控制台不会打印出字符串,该字符串会在LoGCat中打印出来。在程序中进行信息输出,一般采用android.util.Log类的静态方法可以实现。Log类所输出的日志的内容从少到多分别是ERROR,WARN,INFO,DEBUG,VERBOSE,对应五种不同类型的首字母,分别对应有Log.e( )、Log.w( )、Log.i()、Log.d( )、Log.v( )五种静态方法。   让我们来编写一个日志输出的测试类吧

  package cn.class3g;   import junit.framework.Assert;   import android.test.AndroidTestCase;   import android.util.Log;   public class UserTest extendsAndroidTestCase{   private static final StringTAG = "tag";   public void testSave()throws Throwable{   int i= 4+8;   Log.i(TAG, "i = " + i);   Assert.assertEquals(5,i);   }   }

  说明:   Log.i(String tag,String msg);   tag:为这条信息定义一个标签,在开发时通常采用其所在类的类名,这样方便我们追踪输出的信息。也方便我们在看到信息时知道其由哪个类输出。   msg:该参数为希望输出的信息的内容。 一般将第一个参数定义成一个静态常量。

 


--结束END--

本文标题: Android日志输出、单元测试

本文链接: https://www.lsjlt.com/news/28779.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作