zoukankan      html  css  js  c++  java
  • Android项目使用Eclipse进行单元测试

    Android项目如果每次都整个调试的话,要加载UI,会等很长时间。所以单元测试就显得很方便了。

    要进行单元测试,首先得修改下AndroidManifest.xml文件。在Instrument标签里点右侧的Add按钮。然后在弹出的窗口双击 Instrument。然后在右侧就会多出一些东西赖。先选择第二行的Target package 的Browse……,选择要测试的包。或者要测试的类所属的包。我这里选的事 com.example.scrollview 包,然后再选择第一行 Name 后的Browse ,可能会搜索一会儿,然后下面就会有一个 “android.test.InstrumentationTestRunner” 选中它,然后保存AndroidMenifest.xml。

     

    然后打开AndroidMenifest.xml的标签,发现在 Application标签上面多了一行 如下的代码

    <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.example.scrollview"></instrumentation>

    要想进行单元测试还得加些东西,是在 Application里面,加入如下一行 。

    <uses-library android:name="android.test.runner"/> 其中android:name 的值可以用 Alt+/来让Eclipse帮你自动补充进去。

    接下来就要写测试代码了。

    在刚才选的包下面建一个测试类,也可以是这个包的子包里。这个测试类要继承 AndroidTestCase 比如MyTest 在他的类里面可以写测试方法。完成后,右击方法名,选择run as=》Android JUnit Tset。也可以进行调试,选好断点后,右击方法名,选择 debug as =》 Android JUnit Tset

    package com.example.scrollview.test;
    
    import org.apache.http.client.HttpClient;
    import org.apache.http.protocol.HTTP;
    
    import com.example.scrollview.utils.HttpUtil;
    
    import android.test.AndroidTestCase;
    import android.text.Html;
    import android.util.Log;
    
    public class MyTest extends AndroidTestCase {
        String testUrl = "http://192.168.1.2/post.php?key=name";
        String params = "name=xiaoming&weight=78";
        
        public void testHttpGet() {
            String message = HttpUtil.sendGetMethod(testUrl, params, HTTP.UTF_8);
            
            Log.d("shang", "testHttpGet:" + Html.fromHtml(message));
        }
        
        public void testHttpPost() {
            String message = HttpUtil.sendPost(testUrl, params, HTTP.UTF_8);
            Log.d("shang", "testHttpPost:" + Html.fromHtml(message));
        }
    }

    这个要求连上手机,或者有模拟器,但实际上不会调用UI,所以还是很快的,更主要的是他可以独立的测试一个类或方法。

  • 相关阅读:
    [C#] 逆袭——自制日刷千题的AC自动机攻克HDU OJ
    [安卓] 13、安卓蓝牙定位(一)——如何周期性获得蓝牙节点信号强度?
    [stm32] NRF24L01+USART搞定有线和无线通信
    [安卓] 12、开源一个基于SurfaceView的飞行射击类小游戏
    [安卓] 11、串口蓝牙·将软硬结合进行到底
    [安卓] 10、悬浮窗与获取其他任务信息
    [安卓] 9、线程、VIEW、消息实现从TCP服务器获取数据动态加载显示
    [安卓] 8、VIEW和SURFACEVIEW游戏框架
    [安卓] 7、页面跳转和Intent简单用法
    Git常用命令记录
  • 原文地址:https://www.cnblogs.com/wayne173/p/4571300.html
Copyright © 2011-2022 走看看