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 可以了;
  观看结果条,如果是红色说明没有通过,代码有问题,如果是绿色说明测试通过了。