对android应用进行单元测试

对应用进行单元测试


在实际开发中,开发android 软件的过程需要不断进行测试。使用Junit测试框架

是正规Android开发的必用技术,在Junit中可以得到组件,可以模拟发送事件和检测程序处理的正

确性,加快开发速度,提高软件健壮性

单元测试除了直接应用与你要测试的项目之外还可以单独作为一个测试项目
直接创建一个单元测试项目:
File ->New->Others->Android->Android Test Project.....选择要测试的项目....(选择


this.project是直接创建一个单元测试应用)
这样会默认配置好测试环境


下面是其他方式创建单元测试项目

对一个应用进行单元测试需要配置的信息:



引入单元测试的环境:
第一步:(1)在配置文件中加入<uses-library android:name="android.test.runner" />
作用:把单元测试中的用到的依赖库加入到应用中
(2)加入
<instrumentation android:name="android.test.InstrumentationTestRunner"
  android:targetPackage="cn.itcast.test" android:label="Tests for My App" />
作用:配置单元测试框架的启动装置(里面有好多类,一般


android.test.InstrumentationTestRunner这一个类就行了targetPackage="cn.itcast.test"这个


用于指定要测试的应用,应用的包名唯一标识一个应用)指定的包要和应用的package相同
加入位置如下


<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="cn.itcast.test"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".MainActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>




<uses-library android:name="android.test.runner" />
    </application>
    <uses-sdk android:minSdkVersion="8" />
<instrumentation android:name="android.test.InstrumentationTestRunner"
  android:targetPackage="cn.itcast.test" android:label="Tests for My App" />


</manifest> 


第二步:
编写单元测试代码(在outline 视图中选择要测试的方法,右键点击"Run As"->"Android Junit 


Test")

实例:完成上述步骤

package cn.itcast.service;

public class PersonService {
	/*
	 * 这里是模拟应用中需要进行单元测试的方法
           这里我单独放入了一个包
	 * */

	public void save(String username){
		String sub = username.substring(6);
	}
	
	public int add(int a, int b){
		return a+b;
	}
}



package cn.itcast.junit;

import junit.framework.Assert;
import cn.itcast.service.PersonService;
import android.test.AndroidTestCase;

public class PersonServiceTest extends AndroidTestCase {
	/*
	 * 继承AndroidTestCase
	 * 在这里编写测试用例这里我单独用一个包
	 * 
	 * */

	public void testSave() throws Exception{
		PersonService service = new PersonService();
		service.save(null);//传入null会出现空指针引用发红色报错
	}
	
	public void testAdd() throws Exception{
		PersonService service = new PersonService();
		int actual = service.add(1, 2);
		Assert.assertEquals(3, actual);//该方法测试实际返回的结果值与期望值是

否相等,此处正确显示绿色条
	}
}




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值