详解Android单元测试方法与步骤

一、修改配置文件AndroidManifest.xml

<? xml version="1.0" encoding="utf-8" ?>
< manifest xmlns:android ="http://schemas.android.com/apk/res/android"
 package ="cn.ycmoon.test.activity" android:versionCode ="1"
 android:versionName ="1.0" >
  < uses-sdk android:minSdkVersion ="8" /> 

  < application android:icon ="@drawable/icon" android:label ="@string/app_name" >
   < uses-library android:name ="android.test.runner" />
   < activity android:name =".MainActivity" android:label ="@string/app_name" >
    < intent-filter >
     < action android:name ="android.intent.action.MAIN" />
     < category android:name ="android.intent.category.LAUNCHER" />
    </ intent-filter >
   </ activity > 

  </ application >
  < instrumentation android:name ="android.test.InstrumentationTestRunner"
  android:targetPackage ="cn.ycmoon.test.activity" android:label ="Testing" />
</ manifest >

说明:1、在Application节点中Activity前添加 <uses-library android:name="android.test.runner" />

2、在Application节点的添加 <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="cn.ycmoon.test.activity" android:label="Testing" />

二、在相应包中编写要完方法,

三、在src同级级目录中添加一个test文件夹[可自定义],并在下建立和项目一致的包名: cn.ycmoon.test.activity

四、在要进行单元测试的方法上右键->NEW->JUNIT Test Case。弹出下界面:

选择 SuperClass为:

点击下一步,选择要测试的方法:

点击完成。

将新产生的单元测试的类放入test/项目包名下。

在单元测试方法中添加实现:

展开test/cn.ycmoon.test.activity下单元测试类,选择要测试的方法,点右键,选择Run As->Android JUnit Test,就会打开单元测试结果界面。

右该方法无错误,则结果会显示绿色状态条:

(0)

相关推荐

  • JUnit单元测试入门必看篇

    什么是单元测试 写了个类,要给别人用,会不会有bug?怎么办?测试一下. 用main方法测试好不好?不好! 不能一起运行! 大多数情况下需要人为的观察输出确定是否正确 为什么要进行单元测试 重用测试,应付将来的实现的变化. 提高士气,明确知道我的东西是没问题的. JUnit4 HelloWorld 需要导入JUnit和hamcrest包 new project 建立类 建立testcase assertThat 使用hamcrest的匹配方法 放弃旧的断言,使用hamcrest断言 a)   a

  • ASP.NET Core中使用xUnit进行单元测试

    单元测试的功能自从MVC的第一个版本诞生的时候,就是作为一个重要的卖点来介绍的,通常在拿MVC与webform比较的时候,单元测试就是必杀底牌,把webform碾压得一无是处. 单元测试的重要性不用多说了,有单元测试的做兜底的项目,好比给开发人员买了份保险,当然这个保险的质量取决于单元测试的质量,那些一路Mock的单元测试,看起来很美,但是什么都cover不到.目前工作中的一个老项目,有2万多个单元测试用例,其中不少是用心之作,真正落实到了业务逻辑,开发人员可以放心的去修改代码,当然一切都必须按

  • Python单元测试实例详解

    本文实例讲述了Python单元测试.分享给大家供大家参考,具体如下: 在Python中进行单元测试需要用到自动单元测试框架PyUnit,Python2.1及其以后的版本都将PyUnit作为一个标准模块(即python的unittest模块),如果你很out,那么你需要从PyUnit网站下载源码安装后才能使用. 一.Python单元测试范例 测试最基本的原理是比较预期结果是否与实际执行结果相同,如果相同则测试成功,否则测试失败.为了更好地理解自动测试框架PyUnit,下面会以对Widget类进行测

  • 详解.Net单元测试方法

    1.测试异常 可以直接对方法进行异常测试,也可以对模拟对象进行异常测试,但是,对模拟对象进行异常测试,很少用,所以,这里就介绍对方法的异常测试.请看如下代码,当用户名为空的时候,抛出异常. 例如 public bool Valid(string userName, string passWord) { if (string.IsNullOrEmpty(userName)) throw new ArgumentNullException("userName is null"); var

  • Spring 异常单元测试的解决

    白盒测试,要求对代码中的每行代码至少覆盖一次. @ApiModelProperty("学科类别") @ManyToOne // 设置学科类别字段不能为空 @JoinColumn(nullable = false) @JsonView({NoneJsonView.class, MeasurementUnitCategoryJsonView.getAllByDisciplineId.class}) private Discipline discipline; 以之前对学科设置不为空为例,我

  • 详解python单元测试框架unittest

    一:unittest是python自带的一个单元测试框架,类似于java的junit,基本结构是类似的. 基本用法如下: 1.用import unittest导入unittest模块 2.定义一个继承自unittest.TestCase的测试用例类,如 class abcd(unittest.TestCase): 3.定义setUp和tearDown,这两个方法与junit相同,即如果定义了则会在每个测试case执行前先执行setUp方法,执行完毕后执行tearDown方法. 4.定义测试用例,

  • 详解Android单元测试方法与步骤

    一.修改配置文件AndroidManifest.xml <? xml version="1.0" encoding="utf-8" ?> < manifest xmlns:android ="http://schemas.android.com/apk/res/android" package ="cn.ycmoon.test.activity" android:versionCode ="1&qu

  • 详解Android Studio正式签名进行调试的实现步骤

    详解Android Studio正式签名进行调试的实现步骤 在Android Studio中,可以使用Gradle进行打包时自动签名.其实Android Studio默认会给调试应用加上Debug签名,但有时候调一些第三方SDK时,需要正式签名才能调起来,所以接下来分享一下使用Gradle自动签名的方法. 一.创建签名文件 打开AS,选择Build->Generate Signed APK,选择要打包的项目,点击Next,再点击Create new...创建签名文件 填写签名文件响应信息,如下所

  • 详解Android TableLayout中stretchColumns、shrinkColumns的用法

    详解Android 中TableLayout中stretchColumns.shrinkColumns的用法 android:stretchColumns="1" android:shrinkColumns="1"这两个属性是TableLayout所特有的,也是这两个属性影响了子对象的布局. 表格布局是按照行列来组织子视图的布局.表格布局包含一系列的Tabrow对象,用于定义行(也可以使用其它子对象).表格布局不为它的行.列和单元格显示表格线.每个行可以包含个以上(

  • 详解Android 中AsyncTask 的使用

    详解Android 中AsyncTask 的使用 1.首先我们来看看AsyncTask 的介绍:   Handler 和 AsyncTask 都是android 中用来实现异步任务处理的方式:其中: Handler 实例向 UI 线程发送消息,完成界面更新, 优点:对整个过程控制的比较精细:         缺点:代码相对臃肿,多个任务同时执行时,不易对线程进行精确的控制: AsyncTask :比Handler 更轻量级一些,适用于简单的异步处理: 优点:简单 | 快捷 | 过程可控:    

  • 详解Android中fragment和viewpager的那点事儿

    在之前的博文<Android 中使用 ViewPager实现屏幕页面切换和页面轮播效果>和<详解Android中Fragment的两种创建方式>以及<Android中fragment与activity之间的交互(两种实现方式)>中我们介绍了ViewPager以及Fragment各自的使用场景以及不同的实现方式. 那如果将他们两结合起来,会不会擦出点火花呢,答案是肯定的.之前在介绍ViewPager时,我们实现了多个ImageView的切换,并配合更新导航原点的状态.那我

  • 详解Android studio如何导入jar包方法

    下面我就总结一下Android studio大家在导入jar包时遇到的一些问题和解决方法: 1,首先先说一下怎么在AS 中找到sdk,jdk,ndk的安装路径,可能一部分人一开始找不到,下面贴出方法: Android studio 中更改sdk的路径,如下图,在右边红色方框中更改sdk的路径 还有一种更好的方式可以把sdk,jdk,ndk的路径全部找到,首先File---Other Settings---Default Project Structure...,打开如下图界面,从红方框处即可直接

  • 详解Android 基于TCP和UDP协议的Socket通信

    本来想讲一下基础的网络通信方面的知识点,发现太枯燥乏味了,不过笔试中也经常会问到这方面的问题,所以关于通信方面的知识点,小编会放到面试中去,因为实战中也就面试会用到这方面知识点 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是"请求-响应方式",即在请求时建立连接通道,当客户端向服务器发送请求后,服务器端才能向客户端返回数据. 而Socket通信中基于TCP/IP协议的通信则是在双方建立起连接后就可以直接进行数

  • 详解Android 消息处理机制

    摘要 Android应用程序是通过消息来驱动的,当Android主线程启动时就会在内部创建一个消息队列.然后进入一个无限循环中,轮询是否有新的消息需要处理.如果有新消息就处理新消息.如果没有消息,就进入阻塞状态,直到消息循环被唤醒. 那么在Android系统中,消息处理机制是怎么实现的呢?在程序开发时,我们经常会使用Handler处理Message(消息).所以可以知道Handler是个消息处理者,Message是消息主体.除此之外还有消息队列和消息轮询两个角色.它们分别是MessageQueu

  • 详解Android安全防护之加密算法

    摘要 也许有些开发者或者企业觉得.我们公司的app,数据量这些少,会有那个黑客吃饱了没事做来破解啊.又不是支付宝,或者其他那些用户量很多的应用.如果是这样想的话,那只能说目光短浅了. Android应用常用的加密算法 如果说按加密的内容是否可以还原,可以分为可逆加密和非可逆加密. 非可逆加密:也就是说加密后的数据是不能还原成原来的数据.比如MD5加密 加密一个密码:123456 加密后成: afabsbfbabf437hfbbff73(结果并不一定是这个,只是举例).也就是说加密后的结果afab

随机推荐