Android中的Junit测试
在开发中Junit测试可以很方便的帮助开者尽可能早的发现并处理问题,而且使用也非常简单,只需要导入Junit测试相关的jar包并创建测试类,就可以对业务功能进行测试,而不用为了测试在代码中添加输出语句把代码搞得面目全非。需要注意的是,编写的测试方法只能是public void并且无参,在测试方法中就可以为所欲为了。
@Test
public void testAdd(){
Demo d = new Demo();
System.out.println(d.add(1,2,3));
}
在Android环境下的测试似乎不太方便了,要编写测试类还要在应用项目配置中配置测试。好在google为大家提供了adt集成环境,这个问题也不是问题了。
接下来,看看一个Android项目做Junit测试的配置步骤:
1、在项目的AndroidManifest.xml文件中找到<application></application>节,在其中添加:
<uses-library android:name="android.test.runner" />
2、在项目的AndroidManifest.xml文件中找到<manifest></manifest>节,在其中添加:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
3、创建一个测试类,继承AndroidTestCase,在其中编写测试方法。如:
public void testGetFirstName() throws Exception {
PersonService ps = new PersonService();
ps.getFirstName();
}
public void testCacl() throws Exception {
PersonService ps = new PersonService();
Assert.assertEquals(2, ps.calc());
}
4、最后就可以runas -> Android JUnit Test,Junit窗口会显示红条或绿条,Console中看到一些信息,诸如:
[2014-05-26 17:04:47 - SlideDemo] ------------------------------
[2014-05-26 17:04:47 - SlideDemo] Android Launch!
[2014-05-26 17:04:47 - SlideDemo] adb is running normally.
[2014-05-26 17:04:47 - SlideDemo] Performing android.test.InstrumentationTestRunner JUnit launch
[2014-05-26 17:04:47 - SlideDemo] Automatic Target Mode: using existing emulator 'emulator-5554' running compatible AVD 'XT531'
[2014-05-26 17:04:47 - SlideDemo] Uploading SlideDemo.apk onto device 'emulator-5554'
[2014-05-26 17:04:48 - SlideDemo] Installing SlideDemo.apk...
[2014-05-26 17:04:49 - SlideDemo] Success!
[2014-05-26 17:04:49 - SlideDemo] Launching instrumentation android.test.InstrumentationTestRunner on emulator-5554
[2014-05-26 17:04:50 - SlideDemo] Sending test information to Eclipse
[2014-05-26 17:04:50 - SlideDemo] Test run finished
Android中的Junit测试的更多相关文章
- Android中使用JUnit测试
package com.meritit.lottery.test; import java.util.List; import android.test.AndroidTestCase; import ...
- Android下的Junit测试
Android SDK 1.5已经将JUnit包含进来了,用过一次,昨天晚上重新用的时候还出了一点问题,还是决定写一篇比较详细的文章,供大家和自己以后使用,写起来也挺方便的,Android下的Juni ...
- Javaspring+mybit+maven中实现Junit测试类
在一个Javaspring+mybit+maven框架中,增加Junit测试类. 在测试类中遇到的一些问题,利用spring 框架时,里面已经有保密security+JWT设定的场合,在你的secur ...
- 在命令行中运行JUnit测试
可以在Eclipse之外运行JUnit测试,使用org.junit.runner.JUnitCore类. 这个类提供了runClasses()方法,它允许运行一个或多个测试类.runClasses() ...
- java中使用junit测试
最初写代码只要功能走通就不管了,然后如果出了什么问题再去修改,这是因为没做测试的工作.测试其实很简单. 1.准备 当前使用idea编写代码,用maven构建工程,使用maven的test功能来进行批量 ...
- Android 中获取 debug 测试 SHA1 和 release SHA1 证书指纹数据的方法
百度地图开发的时候要申请KEY,需要提供SHA1证书指纹数据 Eclipse eclipse中直接查看:windows -> preferance -> android -> bui ...
- 【IDEA】单元测试:项目中引入JUnit测试框架+Mock简单了解
一.Junit 使用和说明: 参考:单元测试第三弹--使用JUnit进行单元测试-HollisChuang's Blog http://www.hollischuang.com/archives/17 ...
- IDEA中的JUNIT测试
安装插件 Ctrl+Alt+s→Plugins→junitgenerator v2.0 Alt+insert 选中JUnit test 中JUnit4 package test.com.demo.co ...
- 在SpringBoot中使用Junit测试
一:加入依赖 <dependency> <groupId>junit</groupId> <artifactId>junit</artifactI ...
随机推荐
- Educational Codeforces Round 6 C. Pearls in a Row set
C. Pearls in a Row There are n pearls in a row. Let's enumerate them with integers from 1 to n from ...
- 11.使用boostregex遭遇无法打开libboost_regex-vc120-mt-sgd-1_62.lib的问题
通过Boost库可以在C++项目中使用正则表达式,配置好环境后链接过程出现”无法打开libboost_regex-vc120-mt-sgd-1_62.lib”的错误. 原因是按照官方生成lib的方法 ...
- Storm Spout
本文主要介绍了Storm Spout,并以KafkaSpout为例,进行了说明. 概念 数据源(Spout)是拓扑中数据流的来源.一般 Spout 会从一个外部的数据源读取元组然后将他们发送到拓扑中. ...
- (转载)Mac下使用Android Studio 获取 SHA1和MD5
Mac下使用Android Studio 获取 SHA1和MD5 2015-08-10 15:38 1776人阅读 评论(1) 收藏 举报 分类: Android(14) 版权声明:本文为博主原创 ...
- ASP.NET使用MergeInto做数据同步,同步SQLSERVER不同数据库的相同表结构的数据
public string SynchronousData() { ReturnJson Rejson = new ReturnJson(); //将WebConfig中的数据库连接name中的值写进 ...
- php——get与post方法(转)
file_get_contents版本: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 <?php /** * 发送p ...
- 前端学习之路——scss篇
一.什么是SASS SASS是一种CSS的开发工具,提供了许多便利的写法,大大节省了设计者的时间,使得CSS的开发,变得简单和可维护. 二.安装和使用 Sass依赖于ruby环境,所以装sass之前先 ...
- requests 后续1
发送带数据post请求 import requests # 发送post请求 data = { } response = requests.post(url, data=data) # 内网 需要 认 ...
- 路飞学城Python-Day5
48.字典的类型的详细方法字典的增加值dic["k1"] = "v1"字典的修改dic["k2"] = "v2"判断是否 ...
- js的onclick和jq的click以及on和bind的区别
onclick和click,只能静态绑定点击事件:bind的可以一次绑定多个事件(click/onmouseover等):on可以动态的绑定事件,当页面加载完成调用on即可