<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Android studio下gradle Robolectric單元測試配置

      android studio下gradle Robolectric單元測試配置

      1.Robolectric

      Robolectric是一個基于junit之上的單元測試框架。它并不依賴于Android提供的測試功能,它使用了shadow objects并且運行測試于普通的工作站/服務器JVM,不像模擬器或設備需要dexing(Android dex編譯器將類文件編譯成Android設備上的Dalvik VM使用的格式),打包,部署和運行的過程,大大減少了測試執行的時間。

      參考:安卓單元測試相關概述http://www.rzrgm.cn/droidpilot/archive/2012/04/27/2473291.html

       

      2.下載as插件

      如果是android studio 0.8.9以下的版本,需要按照指示添加額外配置

      https://github.com/evant/android-studio-unit-test-plugin

      3.編寫gradle 配置

      項目地址:https://github.com/JCAndKSolutions/android-unit-test

      以下是配置的詳細說明

       

      buildscript {
        repositories {
              mavenCentral()
              maven {
                  url 'https://oss.sonatype.org/content/repositories/snapshots/'
              }
          }
       
          dependencies {
              classpath 'com.android.tools.build:gradle:0.12.+'
      //        classpath 'org.robolectric:robolectric-gradle-plugin:0.13.+’
          //引用相關gradle插件
              classpath 'com.github.jcandksolutions.gradle:android-unit-test:1.6.2'
          }
      }
      apply plugin: 'android-library'
      apply plugin: 'idea'
      idea {
          module {
          //設置測試類的輸出目錄
              testOutputDir = file('build/test-classes')
          }
      }
      repositories {
          mavenCentral()
          maven {
              url 'https://oss.sonatype.org/content/repositories/snapshots/'
          }
      }
      //由于android studiode 一個bug,必須把module的iml文件中的android sdk引用放到最下面
      task pushDownJdkDependency {
      //這里是待測試項目的iml文件名
          def imlFile = file("library.iml")
          doLast {
              try {
                  def parsedXml = (new XmlParser()).parse(imlFile)
                  def jdkNode = parsedXml.component[1].orderEntry.find { it.'@type' == 'jdk' }
      
                  parsedXml.component[1].remove(jdkNode)
      //這里是target sdk版本,只需要改數字就行
                  new Node(parsedXml.component[1], 'orderEntry', ['type': 'jdk', 'jdkName': "Android API 19 Platform", 'jdkType': 'Android SDK'])
                  def writer = new StringWriter()
                  new XmlNodePrinter(new PrintWriter(writer)).print(parsedXml)
                  imlFile.text = writer.toString()
      
              } catch (FileNotFoundException e) {
                  // nop, iml not found
              }
          }
      }
      //在build之前修改iml文件
      gradle.projectsEvaluated {
          preBuild.dependsOn(pushDownJdkDependency)
      }
      android {
          compileSdkVersion 19
          buildToolsVersion '19.1.0'
      
          sourceSets {
              main {
                  manifest.srcFile 'AndroidManifest.xml'
                  java.srcDirs = ['src/main/java']
                  res.srcDirs = ['res’]
      //指定測試文件所在目錄
                  androidTest.setRoot('src/test')
              }
          }
          defaultConfig {
              minSdkVersion 10
              targetSdkVersion 19
              versionCode 2
              versionName "2.0.0"
              testInstrumentationRunner "com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner"
          }
      }
      //應用插件
      apply plugin: 'android-unit-test'
      
      dependencies {
          compile 'com.android.support:support-v4:19.1.0’
      //注意,如果https://github.com/evant/android-studio-unit-test-plugin,此插件沒有安裝,則可能無法識別testCompile語義
      //junit:junit和org.robolectric:robolectric是必須項,其他的項目根據實際引用添加
          testCompile 'junit:junit:4.10'
          testCompile 'org.robolectric:robolectric:2.3'
          testDebugCompile 'org.debugonly.dependency'
          testFreeCompile 'Admob.jar'
          testCompile 'org.mockito:mockito-all:1.9.5'
          testCompile('com.squareup:fest-android:1.0.+') { exclude module: 'support-v4' }
      }

       

      4.運行測試

      直接在as的終端里面執行:gradle test 或者./gradlew test 即可

      posted @ 2014-10-11 14:11  lsjwzh  閱讀(2747)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 漂亮的保姆hd完整版免费韩国| 泌阳县| 少妇被黑人到高潮喷出白浆| 肥西县| 尉犁县| 一区二区三区四区黄色网| 精品国产亚洲午夜精品a| 亚洲欧美成人久久综合中文网| 亚洲中文字幕人妻系列| 中文文字幕文字幕亚洲色 | 亚洲日韩性欧美中文字幕| 2020年最新国产精品正在播放| 91热在线精品国产一区| 久久精品av国产一区二区| 亚洲中文字幕无码永久在线| 少妇高潮尖叫黑人激情在线| 粉嫩国产av一区二区三区| 亚洲天堂伊人久久a成人| 国产熟睡乱子伦视频在线播放 | 疯狂做受XXXX高潮国产| 亚洲精品一区二区三区在线观看| 无码h片在线观看网站| 激情综合色综合啪啪开心| 欧美人禽杂交狂配| 动漫精品中文无码卡通动漫| 亚洲精品国产精品国在线| 国产一区二区三区美女| 97人妻精品一区二区三区| 精品综合一区二区三区四区| 又爆又大又粗又硬又黄的a片| 国产精品人妻中文字幕| 国产超碰无码最新上传| 国产精品一区二区三区黄| 日韩国产精品中文字幕| 国产又大又粗又爽的毛片| 国产a网站| 乐清市| 奇米影视7777久久精品| 亚洲综合日韩av在线| 亚洲色无码专区一区| 中文国产成人精品久久不卡 |