`
wangstar
  • 浏览: 43432 次
  • 性别: Icon_minigender_1
  • 来自: 南昌
社区版块
存档分类
最新评论

http://www.touch3g.cn/html/y2009/using-junit-in-android-app-development-1236.htm

阅读更多
  这几天忙着写一个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国家标准

    Y2009M07D2 PPU程序

    Y2009M07D2 PPU程序 可以看看

    PCB导线载流量分析-by 烽火通信科技股份有限公司.pdf

    随着产品密集化程度提高,产品功耗越来越大,作为承担电流传输载体的PCB铜导线,其载流要求值越来越高。IPC关于导线载流量标准 IPC-2152-2009的参照标准中,其导线载流量与导线横截面积曲线图中,仅针对0.5平方毫米...

    分段线性拟合matlab代码-cvxreg:凸回归

    y2009_lspa/lspa.py 凸分段线性拟合, 亚历山德罗·马格纳尼(Alessandro Magnani),斯蒂芬·博伊德(Stephen P. 优化与工程,2009年,第10卷()。 凸自适应分区(CAP)和FastCAP y2013_cap/cap.py 具有自适应分区...

    智慧学院智能化项目规划设计方案PPT(45页).pptx

    智慧学院智能化项目规划设计方案PPT(45页).pptx

    AO工艺设计计算(全).xls

    污水处理计算书

    ASP+ACCESS动态网站设计与制作(源代码+设计说明书).zip

    ASP+ACCESS动态网站设计与制作(源代码+设计说明书).zip

    基于matlab实现的二维渗流代码,用于模拟在二维条件下,格点所受碰撞的次数.rar

    基于matlab实现的二维渗流代码,用于模拟在二维条件下,格点所受碰撞的次数.rar

    基于matlab实现可实现脉冲编码调制,模拟信号的数字传输:抽样、量化、编码.rar

    基于matlab实现可实现脉冲编码调制,模拟信号的数字传输:抽样、量化、编码.rar

    ASP+access网上购物系统(设计说明书+源代码).zip

    ASP+access网上购物系统(设计说明书+源代码).zip

    Screenshot_20240503_054519.jpg

    Screenshot_20240503_054519.jpg

    node-v12.17.0-linux-armv7l.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    ASP+ACCESS软件信息发布系统设计(源代码+设计说明书+调研报告+任务书).zip

    ASP+ACCESS软件信息发布系统设计(源代码+设计说明书+调研报告+任务书).zip

    2024年金属氧化物避雷器行业分析报告.pptx

    行业报告

    ASP+SQL学生排课管理系统(源代码+设计说明书).zip

    ASP+SQL学生排课管理系统(源代码+设计说明书).zip

    node-v10.18.1-linux-ppc64le.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    The Experiment 2 of Engineering Electromagnetics.pdf

    The Experiment 2 of Engineering Electromagnetics.pdf

    2003-2022年上市公司管理层权力强度综合指标含原始数据+do代码(excel+dta)

    2003-2022年上市公司管理层权力强度综合指标含原始数据+do代码(exce l+dta) 作为公司内部监督的一个重要方面,有效的内部控制能够减轻管理层与股东 之间的代理冲突,进一步保护投资者利益; 而作为公司外部监督的一个重要内容, 分析 师跟踪有助于降低管理层与外部投资者之间的信息不对称程度, 提高公司的可信度。这两 者都可以在一定程度上有效约束管理层的机会主义行为。 1、数据时间:2000-20 22年 2、数据文件:包含原始数据、do代码、参考文献及最终结果 3、数据格式: excel+dta格式 4、数据说明: ①剔除了ST、*ST、金融业、资不抵债、 关键数据缺失的观测值; ②参考了郑珊珊(2019)和刘剑民(2019)的方法,运 用主成分分析方法,构建了2个管理层权力强度的指标。 ③Powe_郑珊珊:依据两职 合一、董事会规模、 内部董事比例、股权分散度、管理层持股,运用主成分分析方法构建 而成。 ④Powe_刘剑民:依据两职合一、董事会规模、 内部董事比例、总经理任期 、管理层持股,运用主成分分析方法构建而成。 5、数据预览: 数据文件: do代码 : 运行结果:

    基于matlab实现的进行渗流力学的s-w曲线,压降漏斗,相渗曲线的作图.rar

    基于matlab实现的进行渗流力学的s-w曲线,压降漏斗,相渗曲线的作图.rar

    基于地理格网的时空知识图谱python源码+详细说明.zip

    如何运行及使用 运行 用eclipse直接clone本项目,GettingStarted目录下的GettingStarted类可以直接运行,查看结果 同时jar目录下有生成的jar包,下载后也可以直接调用 使用 初次使用流程:新建知识图谱加载知识图谱添加数据添加或查询 非初次:加载知识图谱添加或查询 Geokg包中主要类与方法介绍 KnowledgeGraph类 创建知识图谱方法 调用创建图谱方法,则会在指定目录创建数据库,一个目录下只能创建一个知识图谱,否则程序报错并强制退出 创建知识图谱的方法有两个,都为静态方法,可以通过类名KnowledgeGraph直接调用,分别为: //@param iGridLevel 要构建的知识图谱网格的等级,取值范围为0-20,小于0取自动取0,大于20自动取20 //@param strDataStore 自定义的存储知识图谱的本地目录 public static boolean createKnowledgeGraph(int iGridLevel,String strDataStore){} //@param iGri

Global site tag (gtag.js) - Google Analytics