这几天忙着写一个Android App(等完成以后应该会open source),今天差不多把网络相关的部分实现了,XML解析还有待完善。几天没写blog感觉有点不自在,正好想起Android 1.5_r1的release notes中专门提到了ADT0.9对于JUnit支持的改进,对于崇尚TDD(测试驱动开发)的人来说这无疑是一个好消息,今天就抽点时间说说Android 1.5中JUnit集成相关的要点吧。 配置完1.5的SDKADT0.9,运行第一个1.5的sample的时候我就看到Run as中多出了一个 “Android JUnit Test”的选项(以前是在Debug中)。
可是文档里并没有提到如何在Android project中集成JUnit测试,好在我从Android Developers讨论组里找到了TDD with Android 1.5这么一个帖子。 就先来看一看如何把Sample中的test case跑起来吧。 (多谢Zhao的blog上关于在Android 1.5 pre中运行APIDemo测试的总结) 第1步,新建一个Android项目,选择“create project from existing source”,并把路径指向android-sdk-1.5/platforms/android-1.5/samples/ApiDemos 第2步,再新建一个Android项目,依然通过“create project from existing source”的方式,这次把路径指向android-sdk-1.5/platforms/android-1.5/samples/ApiDemos/tests 这时候ADT会报错,因为它无法找到APIDemo项目。右键,选择Properties,在Java Build Path –> Projects中添加APIDemo项目即可。 第3步,以“Android Application”方式运行第一个项目(注意正确设置AVD),APIDemo将被安装到模拟器。 第4步,以“Android Application”方式运行第二个项目(注意正确设置AVD),APIDemo Test将被安装到模拟器。 第5步,现在,我们可以通过Dev Tools中的Instrumentation来执行APIDemo Test了。找到Instrumentation中的”Tests for API Demos.”,点击即可开始测试。 这时,通过LogCat即可看到测试结果。 除了通过Dev Tools来执行单元测试,我们还有另外两种方法: 1、通过ADT,在eclipse中执行测试 在eclipse中选中test项目,直接Run As “Android JUnit Test”既可以,测试结果会以图形化的方式返回。
2、通过sdb shell命令执行测试
在命令行中执行 adb shell am instrument -w com.example.android.apis.tests/android.test.InstrumentationTestRunner 命令
测试结果如下:
其中,com.example.android.apis.tests是APIDemo Test所在的package。
那么,我们如何创建自己的test项目呢?
大致的步骤如下:
1、新建一个普通的Android项目,比如项目名为Foo,Package为com.foo.bar
2、新建一个Test项目,注意把Package填成com.foo.bar.tests,项目名任意,比如FooTest,Application name任意
3、在FooTest项目的Build Path中添加Foo项目
4、参照APIDemo Test项目的manifext.xml来修改FooTest项目的manifest.xml
5、编写TestCase(至于测试代码的编写,William也还在学习中
)
分享到:
相关推荐
但是,根据标题“GB19510.14Y2009”和描述“GB19510.14Y2009 led国家标准”,以及标签“led国家标准”,我可以提供关于LED国家标准的知识点。 GB19510.14Y2009是中国针对LED照明产品的电气安全标准。这个标准是LED...
标题中的“Y2009M07D2 PPU程序”表明这是一个关于PPU(Processing Processing Unit,处理处理单元)的程序,日期可能代表该程序或更新的时间,即2009年7月2日。描述中的“可以看看”提示这是一个可供查看或学习的...
在探讨PCB导线载流量分析时,首先需要明确PCB(印刷电路板)的作用。PCB是电子设备中重要的组成部分,它为电子元器件提供机械支撑和电气连接或电子互连。随着电子设备的小型化、高密度集成化以及数据容量的增加,对...
y2009_lspa/lspa.py 凸分段线性拟合, 亚历山德罗·马格纳尼(Alessandro Magnani),斯蒂芬·博伊德(Stephen P. 优化与工程,2009年,第10卷()。 凸自适应分区(CAP)和FastCAP y2013_cap/cap.py 具有自适应分区...
2. `rewrite ^/html/y2009/([0-9]+).html$ /archives/$1.html permanent;`:这条规则将旧的年份目录下的文章页面重定向到新的URL模式。 此外,还包含了几种条件判断: - 如果不是`***`域名,则将请求永久重定向到`*...
- 用户可以直接输入单元格地址,如“Y2009”,来快速跳转到该位置。 - 对于连续的单元格区域,可以输入起始和结束单元格地址,如“Y2004:Y2009”来选取整个范围。 2. **定位条件**: - **定位“公式”**:这用于...
- **标准遵循**:需符合《ISOTS10891Y2009 Freight containers-Radiofrequency identification (RFID)-License plate tag》及《GB/T17894-2009 海运托盘箱-RFID身份电子标签》等国际与国家标准。 - **数据存储**:...
1. ISO24631-1Y2009:这部分主要定义了动物射频识别系统的总体架构和基本概念,包括系统组件、通信协议和数据结构等,为后续部分提供了理论基础。 2. ISO24631-2Y2009:这部分聚焦于动物标识符的编码规则和分配机制...