blog,blog,blog blog,blog,blog

blog,blog,blog

目录
在intellij idea 中进行android 单元测试
/  

在intellij idea 中进行android 单元测试

本次用来测试的代码是sqlite进行数据操作。

 

 

######右键选择要进行单元测试的应用

 

 

 

 

#############弹出选择框,选择Android>Test Module>Next

 

 

 

###########Finish

 

 

 

#####现在回到项目目录

 

#########同样出现的还有运行的Run,已经自动为我们配置好了。

 

 

###########回到HomeActivityTest.java中

 

 

###############

 

#########这是我们最后的测试代码

 

复制代码
package com.op.teachingliteapp.activity;

import android.annotation.TargetApi;
import android.content.ContentValues;
import android.os.Build;
import android.test.ActivityInstrumentationTestCase2;
import com.op.teachingliteapp.common.database.CourseTable;
import com.op.teachingliteapp.common.database.DBHelper;
import com.op.teachingliteapp.common.database.dao.CourseDao;

/**

  • This is a simple framework for a test of an Application. See {@link android.test.ApplicationTestCase

  • ApplicationTestCase} for more information on how to write and extend Application tests.

  • <p/>

  • To run this test, you can type: adb shell am instrument -w \ -e class com.op.teachingliteapp.activity.HomeActivityTest

  • \ com.op.teachingliteapp.tests/android.test.InstrumentationTestRunner
    */
    @TargetApi(Build.VERSION_CODES.CUPCAKE)
    public class HomeActivityTest extends ActivityInstrumentationTestCase2<HomeActivity> {
    DBHelper dbHelper;
    @TargetApi(Build.VERSION_CODES.CUPCAKE)
    public HomeActivityTest() {
    super("com.op.teachingliteapp", HomeActivity.class);
    }

    @Override
    public void setUp() throws Exception {
    super.setUp();
    dbHelper
    = new DBHelper(getActivity());

    }

    public void testCourseDaoInsert() throws Exception {
    CourseDao courseDao
    = new CourseDao(dbHelper);
    ContentValues contentValues
    = new ContentValues();
    contentValues.put(CourseTable.COLUMN_ID,
    "3300");
    contentValues.put(CourseTable.COLUMN_COURSE_NAME,
    "JAVA");
    contentValues.put(CourseTable.COLUMN_COURSE_TYPE_ID,
    "2209");
    contentValues.put(CourseTable.COLUMN_CREDIT,
    "4");
    contentValues.put(CourseTable.COLUMN_CREATE_TIME,
    "2015-06-21 17:35:00.000");
    // 学时
    contentValues.put(CourseTable.COLUMN_PERIOD,"78");
    contentValues.put(CourseTable.COLUMN_UPDATE_TIME,
    "2015-06-24 17:35:00.000");
    contentValues.put(CourseTable.COLUMN_DEPT_ID,
    "4044");

     assertEquals(</span>1<span>, courseDao.insert(contentValues));
    

    }

}

复制代码

 

 

############运行测试,测试需要虚拟机的辅助,但是测试过程中不会出现Activity的启动(我们看不到任何界面的东西)。

 

#############测试在跑了

 

 

##############测试出错了,修改一下代码(以为之前已经有了表里已经有了一条数据,所有行行号不会是1,而是2,现在要把它修改为3)

1
assertEquals(3, courseDao.insert(contentValues));

  

 

 

###########现在再跑一遍测试,成功了。

 

 

 

 

##########最后的表是这样的。

文章仅在黑客派和本网站刊登,其他为盗载。