首页 > 其他分享 >android 单元测试之 JUnit

android 单元测试之 JUnit

时间:2023-07-31 22:00:47浏览次数:36  
标签:assertTrue Instrumentation setup 单元测试 android JUnit


android里面做单元测试
第一,JUnit。
      实用范围:
     

东西,比如业务逻辑,数据封装,数值计算等等。并不能测试android api。


第二, 采用Instrumentation. Android单元测试的主入口是InstrumentationTestRunner。它相当于

JUnit当中TestRunner的作用。你可以将 Instrumentation理解为一种没有图形界面的,具有启动能力

的,用于监控其他类(用Target Package声明)的工具类。任何想成为Instrumentation的类必须继承

android.app.Instrumentation。


第一种测试方式实现步骤:
   setup 1:   选中测试项目点右键
   setup 2:   在Run Configuration里新建一个JUnit。
   setup 3:  

            ->add Library)
   setup 4:  


第二种测试方式步骤:

setup1: 在manifest配置文件中加入蓝色部份


<?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="your.tests.package">
     <application>
        <uses-library android:name="android.test.runner" />
    </application>
    <instrumentation android:name="android.test.InstrumentationTestRunner"
                     android:targetPackage="your.work.package"
                     </manifest>
setup2: 注意红色部份package.如果不好区别可用最上层包名.如:package="your"
setup3: 写测试类
public class SdcardTest extends AndroidTestCase {
  public void test1(){
   File f=new File("/sdcard");
   String[] l=f.list();
   this.assertTrue(f.exists());
   this.assertTrue(f.isDirectory());
   this.assertTrue(f.list().length>0);
  }
 }


标签:assertTrue,Instrumentation,setup,单元测试,android,JUnit
From: https://blog.51cto.com/u_3124497/6913823

相关文章

  • Android开发有必要深耕Framework吗?
    引言关于Android市场,我们也不必探究。市场下滑是众所周知的,凉是不可能凉的,毕竟智能网络时代安卓占据人们生活很大一块。而我们在开发岗位,大家都会多少接触一些framework底层技术。那么framework技术到底有多重要呢?其实掌握AndroidFramework一直是一个不光要熟练而且必须要精通的......
  • Android Fragments 详细使用
    AndroidFragments详细使用 Fragments诞生初衷  自从Android3.0中引入fragments的概念,根据词海的翻译可以译为:碎片、片段。其上的是为了解决不同屏幕分辩率的动态和灵活UI设计。大屏幕如平板小屏幕如手机,平板电脑的设计使得其有更多的空间来放更多的UI组件,而多出......
  • android隐式启动Activity的例子
    android隐式启动Activity的例子【原创】android2.2测试通过android隐匿启动Activity的例子,同样适用于Service,BroadcastReceiver<activityandroid:name=".MyActivityTwo"android:label="ThisMyActivityTwo"><!--这样进行匹配:Intentintent=newIntent(Intent.ACT......
  • Android学 App自动更新之通知栏下…
    Android学习系列(2)--App自动更新之通知栏下载见证过博客园的多次升级,你也希望你的软件通过更新发布新特性通知用户吧,是的。这篇文章是android开发人员的必备知识,是我特别为大家整理和总结的,不求完美,但是有用。 1.设计思路,使用VersionCode定义为版本升级参数。android为我......
  • Android中dispatchTouchEvent,&nbs…
    onInterceptTouchEvent用于改变事件的传递方向。决定传递方向的是返回值,返回为false时事件会传递给子控件,返回值为true时事件会传递给当前控件的onTouchEvent(),这就是所谓的Intercept(拦截)。[tisaps:正确的使用方法是,在此方法内仅判断事件是否需要拦截,然后返回。即便需要拦截......
  • Android应用如何适配不同分辨率的…
           Android应用如何适配不同分辨率的手机主要分三块考虑1)界面配置根据不同的分辨率,创建手机界面文件例子:在res下创建layout-800x480    ......
  • Android开发FAQ-ContentObserver应…
    一、需求1.产品不同界面显示数据个数.2.数据个数动态改变.3.涉及数据与本地数据库有关可采用ContentObserver技术实现二、代码实现如下:mCursorObserver=newContentObserver(mHandler){          @Override          publicvoidonChange(booleanse......
  • Android 设计模式:(二)观察者模…
    Android设计模式:(二)观察者模式——让你的对象知悉现况设计模式2012-05-2813:28 1074人阅读 评论(1) 收藏 举报*观察者模式:定义了对象之间的一对多依赖关系,当一个对象(主题对象)的状态改变时,它的所有依赖者(观察者对象)都会收到通知并自动更新。*观察......
  • Android NFC Mifare Tag 读写示例
    前面例子介绍了检测,读写NFCTAG开发的一般步骤,本例针对常用的MifareTag具体说明。MifareTag可以有1K,2K,4K,其内存分区大同小异,下图给出了1K字节容量的Tag的内存分布:数据分为16个区(Sector),每个区有4个块(Block),每个块可以存放16字节的数据,其大小为16X4X16=1024......
  • 关于Android流畅度不如iOS的几点看…
    关于Android流畅度不如iOS的几点看法网上一名据称是前谷歌实习生的人透露了一些关于Android系统硬件加速的内幕。据称,在Android3.0和4.0之前,并没有完整的硬件加速。他们一直在通过硬件加速绘制某些UI元素,并称效果并不像他们想象中那样乐观。他认为,Android效率低下的设计框......