zoukankan      html  css  js  c++  java
  • Getting Started

    Robolectric works best with Gradle or Maven. If you are starting a new project, we would reccomend Gradle first (since it is the build system of choice in Android Studio) and Maven second. Regardless, Robolectric should integrate well into whatever build tool you are using.

    Building with Gradle

    Add the following to your build.gradle:

    testCompile "org.robolectric:robolectric:3.1.1"
    

    Annotate your test with the Gradle test runner:   //使用注解注释每个测试类

    @RunWith(RobolectricGradleTestRunner.class)
    @Config(constants = BuildConfig.class)
    public class SandwichTest {
    }
    

    Note that you must specify the constants field which points to the BuildConfig.class generated by the build system. Robolectric uses the constants in the class to compute the output paths used by Gradle when building your project. Without these values, Robolectric will not be able to find your merged manifest, resources, or assets.

    //注意你必须指定常量域指向BuildConfig.class。robolectric使用这个常量来计算构建项目时的输出路径,没有这些变量,robolectric将不会找到你的manifest,resource和assets

    Building with Maven

    Add the following to your pom.xml:

    <dependency>
       <groupId>org.robolectric</groupId>
       <artifactId>robolectric</artifactId>
       <version>3.1.1</version>
       <scope>test</scope>
    </dependency>
    

    Annotate your test with the base test runner:

    @RunWith(RobolectricTestRunner.class)
    public class SandwichTest {
    }
    

    If you reference resources that are outside of your project (i.e. in a aar dependency), you will need to provide Robolectric with a pointer to the exploded aar in your build system. See the section titled "Using Library Resources" for more information.

    Building with Android Studio

    Robolectric works with Android Studio 1.1.0 or newer. Simply follow the instructions above for working with Gradle. For versions of Android Studio older than 2.0.0, enable the unit test support in the "Build Variants" tab and run your test. As of Android Studio 2.0.0, the test artifacts feature is enabled by default, and the setting to enable/disable test artifacts can be found in File Menu -> Settings -> Build, Execution, Deployment -> Build Tools -> Gradle -> Experimental.

    Android Enable Unit Tests

    Note for Linux and Mac Users

    If you are on Linux or on a Mac, you will probably need to configure the default JUnit test runner configuration in order to work around a bug where Android Studio does not set the working directory to the module being tested. This can be accomplished by editing the run configurations, Defaults -> JUnit and changing the working directory value to $MODULE_DIR$.

    Android Studio Configure Defaults

    Building with Eclipse

    Install the m2e-android plugin for Eclipse, and import the project as a Maven project. After importing into Eclipse, you have to mark the consume-aar goal as ignored, since AAR consumption is not yet supported by m2e-android. To do this, simply apply the Quick fix on the "Plugin execution not covered by lifecycle configuration" error. To run your tests, just right click on the project -> Run as ->JUnit Test, then choose the Eclipse JUnit Launcher.

    Sample Projects

    Look at the Robolectric samples to see how fast and easy it can be to test drive the development of Android applications. In addition, check out the Gradle or Maven starter projects.

    ----------- Do not start just casually, and do not end just casually. -----------
  • 相关阅读:
    Finer Resolution Observation and Monitoring -Global Land Cover更精细的分辨率观测和监测-全球土地覆盖
    MapServer教程3
    手写Tomcat源码
    室内无线局域网
    基于点云的3ds Max快速精细三维建模方法及系统的制作方法 插件开发
    Web Mapping Illustrated Using Open Source GIS Toolkits
    apache Internal Server Error 解决方法
    php命令行工具
    小程序:将gbk转为utf-8
    java FileUtil(文件操作类)
  • 原文地址:https://www.cnblogs.com/yexiant/p/5691937.html
Copyright © 2011-2022 走看看