zoukankan      html  css  js  c++  java
  • Android之单元测试

    在实际开发中,开发android软件的过程需要不断地进行测试。使用Junint测试框架,是正规Android开发的必用技术,在Junint中可以得到组件,可以模拟发送事件和检测程序处理的正确性。单元测试是嵌入到项目中;也可以作为一个单独的项目争对某个具体项目进行测试。

    第一步:首先在AndroidManifest.xml中加入下面红色代码:

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="com.lee0000.test" android:versionCode="1" android:versionName="1.0">

    <application android:icon="@drawable/icon" android:label="@string/app_name">

    <uses-library android:name="android.test.runner"/> 

    </application>

    <use-sdk android:minSdkVersion="6"/>

    <instrumentation android:name="android.test.instrumentationTestRunner" android:targetPackage="com.lee0000.test" android:label="Tests"/> 

     ***上面targetPackage指定的包要和应用的package相同。

    第二步:编写单元测试代码,一般对将要测试的方法命名testXXX。需要测试的时候选择大纲(Outline视图)选择测试的方法右键点击,选择"Run As" - "Android Junit Test"。

    例,

    项目结构: 

     

    AndroidManifest.xml文件: 

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package
    ="com.lee0000.test"
        android:versionCode
    ="1"
        android:versionName
    ="1.0" >

        <uses-sdk android:minSdkVersion="15" />

        <application
            
    android:icon="@drawable/ic_launcher"
            android:label
    ="@string/app_name" >
            <activity
                
    android:name=".JUintTestActivity"
                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>
        <instrumentation 
            
    android:name="android.test.InstrumentationTestRunner"
            android:targetPackage
    ="com.lee0000.test" android:label="Tests"/>   

    </manifest>  


    定义测试的两个方法:

    public class testclass {
        public void str(String s){
            System.out.println(s.substring(6));
        }
        
        public int add(int a,int b){
            return a+b;
        }

    }  


    一般继承的是AndroidTestCase,测试的时候就是测试这两个方法,如果在对应方法中选择"Run As" - "Android Junit Test"时出错,可以右键Test类,选择"Run as" - "Run Configurations",在 Instrumentation runner中选择:

    import junit.framework.Assert;
    import android.test.AndroidTestCase;
    public class Test extends AndroidTestCase{
        public void teststr() throws Exception{
            testclass tc = new testclass();
            tc.str("null");
        }
        
        public void testadd(){
            testclass tc = new testclass();
            int t = tc.add(1, 2);
            Assert.assertEquals(3, t);
        }

    }  


  • 相关阅读:
    PAT(B) 1037 在霍格沃茨找零钱(Java)
    PAT(B) 1043 输出PATest(Java)统计
    PAT(B) 1063 计算谱半径(Java)
    绘制虚线
    contentMode
    数字签名是什么
    动态设置 button的 name 的话 闪动的问题 解决
    setValuesForKeysWithDictionary 的用法
    获得 当前时间
    iOS 键盘类型
  • 原文地址:https://www.cnblogs.com/lee0oo0/p/2678596.html
Copyright © 2011-2022 走看看