家居装修知识网

首页 装修资讯 家居知识 家居百科
当前位置 >> 家居知识 如何在android中进行单元测试

如何在android中进行单元测试 2011-04-24

https://m.biud.com.cn 2011年04月24日07:12 家居装修知识网  


   在开发过程中,无论是什么语言,如果能够纯熟运用单元测试,提高的效率那是大大地,当测试或某相关的小姑娘报bug的时分,站在你身边,用无辜的大眼睛对你说,“公子,有地方出问题”,正要打开相关的应用程序或者页面重现那个问题时,你大臂一挥,“小姐,不用那么麻烦,看在下的”,打开单元测试一跑,三下两下搞定问题,那些连myeclipse都不明白怎么拼的MM,看到这一幕,能不心悦诚服吗?如果公司都是大老爷们,那首先要做的就和老板提意见,然后再看下文。
   android的单元测试很简朴,首先,新建一个android project。然后新建一个android test project,File-->Project-->Android-->Android Test Project。然后会弹出一个对话框“New Android Test Project”,填入工程名,在“an existing Android Project”中选择要单元测试的工程,其实就和那个东西挂钩,理解为母体和寄生虫的关系也未尝不可。当选择好Android Project工程之后,下面的那些包名之类的自然就自动填好了。点“finish”,一个android test project就OK了--如果不是太倒霉的话。
   android test project工程下的目录结构和android project差不多,只是src下的package下多一个test包。接下来就开始创建junit了,像平常添加新类那样右击包,New-->Junit Test Case,接下来就填junit名字,选择“New Junit3.0 Test”,Junit4.0没试过,但由于某些原因Junit4不肯定能体现出Junit的特性来,一会说,现在不说,伏笔很重要,我的地盘我做主...在下面吧setUp勾上。“finish”,现在就可以写测试
代码,详细的实例代码如下:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.helloAndroid.Books;
import com.helloAndroid.HelloAndroid;
import com.helloAndroid.R;

import android.R.xml;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.ListView;
import android.widget.SimpleAdapter;


public class Junit3 extends ActivityInstrumentationTestCase2 {

ListView listView;
Books books;

public Junit3() {
super("com.helloAndroid.HelloAndroid" ,Books.class);
// TODO Auto-generated constructor stub
}

protected void setUp() throws Exception {
super.setUp();
books = this.getActivity();


}

//添加testPreconditions()方法,检查初始化环境,只执行一次 
public void testPreconditions() {

 //assertNotNull(integer);



//添加单元测试 
public void testText() {

 //assertEquals(resourceString,(String)mView.getText());
List> resourceName = new ArrayList>();
Map map = new HashMap();

map.put("line1", "测试Junit");
map.put("img", R.drawable.weikexue);
resourceName.add(map);

//listView = (ListView)books.findViewById(com.helloAndroid.R.id.l)
SimpleAdapter notes = new SimpleAdapter(
books, 
resourceName, 
R.layout.rows, 
new String[]{"line1" ,"img"}, 
new int[]{R.id.text1, R.id.img});

//books.setListAdapter(notes);
  } 

}
我还在你身边,别着急,我会解释。必须连续这个类ActivityInstrumentationTestCase2,通过泛型把要单元测试的目标类联系起来,ActivityInstrumentationTestCase2,Books就是目标类,setUp() 方法是自动生成,因为刚才在创建的工夫把“setUp()”的选项卡勾上了,如果没勾上的话,就重写一个,然后写两个方法testPreconditions()和testText(),testText是单元测试的执行类,testPreconditions()不明白详细干嘛的,千万切记要把这三个方法都写出来,否则报出来的错,你去google都搜不到解决方法。由于必须得有这三个类,而Junit4里是通过annotation的方式标注测试的行为,android test project中用junit4可能会达不到预期效果,没测试过,反正在junit里少那三个方法,也是不行的,这是实践过的。
最简朴的单元测试就这样了。android的单元测试也是有一个很大的框架,ActivityInstrumentationTestCase2上面也连续了好多层,详细的,以后再聊。

相关知识

如何在android中进行单元测试
衣柜企业如何在“拼杀”中存活下来
2018 AWE 比佛利“未来”套系发布,跨界布局高端家电生态圈
数据库入门浅析:ASP.NET与MySQL连接
预言来袭 2016家居大咖如何在“坏时代”中迎接“好时代”
拿了绿色环保奖的帝标是如何在“双节活动”中脱颖而出的
如何在IE9中开发HTML5网络应用?
聚焦LED4S:一个“点子”撑起一个发展宏图
家装攻略:如何在15分钟完成100 房子大扫除
LED企业如何在“乱世”中精准定位

本文来自 家居装修知识网 如何在android中进行单元测试 https://m.biud.com.cn/zhidao-view-id-9653.html