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,所以还是很快的,更主要的是他可以独立的测试一个类或方法。
Android项目使用Eclipse进行单元测试的更多相关文章
- 导入android项目在eclipse中会报@Override错误
很多时候导入android项目在eclipse中会报@Override错误,这是由于java编译器的版本不正确,Java 1.5的编译器默认对父类的方法进行覆盖,采用@Override进行说明:但1. ...
- android项目在eclipse下编译运行的问题
JDK与电脑系统要匹配,都是32位或者64位: android工程要与JDK相匹配,如果之前的android工程使用的jdk版本较高,则可能出现一些包或者类.方法.属性对应不上而报错,Android ...
- Java,Android 项目导入Eclipse常见错误
一.导入的jar包不存在: 右键工程属性查看: 导入的第三方jar包不存在: 解决方法: 删除该jar包,得到该jar包并存至本地,再导入该jar包 二.中文字符乱码: 解决方法: 右键项目属性: 修 ...
- Jenkins构建Android项目持续集成之单元测试及代码覆盖率
单元测试 在软件开发中一直在推崇TDD(测试驱动开发),但是一直不能被有效的执行或者并不是真正的测试驱动开发(先开发后写单元测试),因为我们懒!而Android开发又是大多应用层面的开发,很多都是和视 ...
- 记一次从git@osc导入Android项目到Eclipse的过程
. . . . . 之前写了一个Android的小项目,放在了git@osc上面托管代码.第一次开发完之后直接用git bash提交上去,然后每次修改都是手工通过git bash往上面合并代码.感觉很 ...
- 【转】引入android项目在eclipse ADT中显示中文乱码问题
(1)修改工作空间的编码方式:Window->Preferences->General->Workspace->Text file Encoding在Others里选择需要的编 ...
- android项目导入eclipse变成java项目——修改.project文件——亲测有效
解决办法:http://www.cnblogs.com/yunfang/p/6068599.html
- Android 如何在Eclipse 引入外部纯Java项目(不是打成Jar使用)
应用情景--如标题: 在Eclipse的 “Android启动项目”中引入“外部的纯Java项目”,能运行的只有是基于Android的测试代码才可以. 一直很纳闷,如果外部写好一个Java插件(例如服 ...
- Android studio导入eclipse项目且不改变目录结构
Android studio的安装与配置论坛当中已经有很多在此就不在细说了,现在开始说下如何在Android studio当中导入eclipse的项目且不改变其目录结构和配置,让使用eclipse的同 ...
随机推荐
- 悦铃文件必须是CCITT A_Law格式的,且没有被压缩
最近在给公司弄来电彩铃,用的是电信的“悦铃”业务,办理过程不想多说了..给了我个网址和账号让我登录,登录界面惨不忍睹,感觉电信根本没有要宣传这项业务的意思,像是粗制滥造外包赶工做出来的.. 当然这不是 ...
- phan—php语法静态检查在windows下的配置
php7推出了语法树,于是静态语法分析更方便了.(可以直接下载我配置好的,传送门百度网盘) 1.先安装php7,到http://windows.php.net/下载php7带openssl的. 2.修 ...
- Hadoop-2.2.0中文文档—— MapReduce 下一代 - Encrypted Shuffle
简单介绍 Encrypted Shuffle capability (加密洗牌功能? )同意用HTTPS 和 可选的client验证 (也称作双向的 HTTPS, 或有client证书的 HTTPS) ...
- Linux编译安装PHP Mysql Nginx
安装gcc g++等编译器 yum -y install gcc gcc-c++ automake autoconf libtool glibc make 安装一些lnmp依赖的库 yum -y in ...
- 在linux 列出 超级用户 普通用户和 系统用户
#!/bin/bash echo Please select which list you want to print echo "1. admin (enter 1)" echo ...
- shell向python传参数
想要在shell中调用python脚本时实现: python pyServer.py argu1 argu2 argu3 利用 sys.argv 即可读取到 相应参数: # coding=utf-8 ...
- 10款CSS3按钮 - 再也不用为按钮设计而发愁了
这次主要给大家分享10款风格各异的CSS3按钮,如果你希望你的页面也能有很炫的样式,那么我相信这10款CSS3按钮就非常适合你,而且每一款都整理了源代码供参考,一起来看看吧. 1.绚丽的CSS3发光按 ...
- 【BZOJ】1625: [Usaco2007 Dec]宝石手镯(01背包)
http://www.lydsy.com/JudgeOnline/problem.php?id=1625 太水了. #include <cstdio> #include <cstri ...
- 【BZOJ】1674: [Usaco2005]Part Acquisition(spfa)
http://www.lydsy.com/JudgeOnline/problem.php?id=1674 想法很简单...将每一种看做一个点,如果i可以换成j,那么连边到j.. 费用都为1.. 然后拥 ...
- 动态向SqlParameter 里添加相应参数
先定义一个List,然后再往List里面添加SqlParameter对象,然后将List转为SqlParameter数组即可 List<SqlParameter> ilistStr = n ...