zoukankan      html  css  js  c++  java
  • android studio测试框架说明

    https://developer.android.google.cn/training/testing/unit-testing/local-unit-tests

    上面是文档

    本地测试:::
    Junit是单元测试框架,
    Mockito和Robolectric都是用来产生模拟对象的,

    Mockito在Java中用的多,PowerMockito是Mockito的增强版可以模拟final,static,private等Mockito不能mock的方法,
    Robolectric可以模拟更多的Andorid框架中的对象。

    如果要构建的本地单元测试对Android框架依赖小,可以选择mockito,速度更快。
    如果要构建的本地单元测试对Android框架有很大的依赖性,可以选择Robolectric

    插桩测试(带界面的测试):::

    在Android设备或者模拟器上运行的测试,这些测试可以访问插桩测试信息,比如被测设备的Context,使用此方法可以运行具有

    复杂Android依赖的单元测试。前两篇中的Espresso 和
    UI Automator就是这类测试,Espresso一般用来测试单个界面,UI Automator一般用来测试多界面交互。它们运行的比本地测试
    慢很多,所以谷歌建议最好是必须针对设备测试的时候才使用。


    spy对象的方法默认调用真实的逻辑,
    mock对象的方法默认什么都不做,或直接返回默认值。


    Mockito和PowerMockito都直接运行在JVM上,JVM上没有Android源码相关的实现,那么在做有Adroid相关的依赖的测试的时候,
    就会报错,这时候就要用到Robolectric啦,当我们去
    调用android相关的代码的时候,它会拦截并去执行自己对相关代码的实现。

    2.mockk只能测试直接返回的方法,无法测试异步返回后,mvvm类的方法,或者LiveData回调的方法
    3.Rxjava有支持mockkit的方法,不使用rxjava的要另外支持测试

  • 相关阅读:
    automaticallyAdjustsScrollViewInsets
    Quartz 2D绘图
    手势识别
    多视图控制器跳转方法
    NSString和NSDate的转换
    遍历子视图中某个类型控件方法
    发布程序后的NSLog批处理
    searchDisplayController用法
    UIImagePickerController使用方法
    沙盒目录常用获取方式
  • 原文地址:https://www.cnblogs.com/caosq/p/15529341.html
Copyright © 2011-2022 走看看