码迷,mamicode.com
首页 > 移动开发 > 详细

在intellij idea 中进行android 单元测试

时间:2015-06-24 20:51:00      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:

本次用来测试的代码是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(1, courseDao.insert(contentValues));


    }



}

 

 

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

技术分享

 

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

 

技术分享

 

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

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

  

技术分享

 

 

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

技术分享

 

 

 

 

##########最后的表是这样的。技术分享

在intellij idea 中进行android 单元测试

标签:

原文地址:http://www.cnblogs.com/nova-/p/4598404.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!