8
votes

Comment utiliser Gradle-Android-Test-Test-Plugin

Je veux devenir robolectrique de travailler avec Android Studio et que je tente d'utiliser [gradle-android-test-plugin] [1] après avoir examiné les réponses à cette [question] [2], mais je n'ai pas de chance.

  1. J'ai créé un nouveau projet Android et l'a nommé MyApp. Li>
  2. J'ai suivi toutes les instructions de la section "Utilisation" du Readme. LI>
  3. Je n'ai pas encore de code à tester dans mon nouveau projet. J'ai donc copié les classes (y compris le `robolectricgradletrucnner`) de la li> OL>
    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:0.5.+'
            classpath 'com.squareup.gradle:gradle-android-test-plugin:0.9.+'
        }
    }
    
    apply plugin: 'android'
    apply plugin: 'android-test'
    
    repositories {
        mavenCentral()
    }
    
    android {
        compileSdkVersion 18
        buildToolsVersion "18.0.1"
    
        defaultConfig {
            minSdkVersion 11
            targetSdkVersion 18
        }
    }
    
    dependencies {
        compile 'com.android.support:support-v4:18.0.0'
    
        testCompile 'junit:junit:4.11'
        testCompile 'org.robolectric:robolectric:2.1.+'
        testCompile 'com.squareup:fest-android:1.0.+'
    }
    


3 commentaires

Re: ne pouvait pas déterminer les dépendances de la tâche ': MyApp: TestDebug'. Les grades 1.7 n'est pas encore prise en charge.


... et c'est ainsi que vous faites l'enveloppe d'enveloppe 1.6: gradle.org/ DOCS / COURANT / UTILISEGUIDE / GRADLE_WRAPPER.HTML , puis exécutez Wrapper pour grades (pas ./gradlew wrapper)


Ce problème est suivi sur GitHub et un correctif sort très bientôt. Au moment où vous lisez ceci, c'est probablement déjà déjà disponible.


3 Réponses :


2
votes

Pour la liste des tâches disponibles Exécuter à partir du dossier de projet principal xxx

pour tests xxx


1 commentaires

Si j'essaie Tâches de gradle ou Test de gradle , alors je reçois ce qui suit: n'a pas pu déterminer les dépendances de la tâche ': MyApp: TestDebug'. Si j'essaie tests de gradle , c'est ce que j'obtiens: Tâche 'Tests' introuvable dans le projet ': MyApp'. Certains candidats sont: «Tâches», «Test».



0
votes

à partir du code du plugin, il semble que vous puissiez exécuter ./ bradlew test pour les tests à exécuter


1 commentaires

Ouais, j'ai vu une mention de cela dans le Readme du plugin. Mais ./ Test hedlew à partir du répertoire racine ou ../ braplatew test du répertoire contenant Androidmanifest.xml Résultats dans: n'a pas pu déterminer les dépendances de la tâche ': MyApp: TestDebug'.



2
votes

Il n'y a pas de tâche d'installation, mais il y a deux tâches préfixées avec l'installation. Vous devez fournir le nom de la tâche complète ou au moins suffisamment pour obtenir la gradle pour déterminer lequel vous parlez (par exemple, installd, ID ou tout le monde installdebug fonctionnera)

https://github.com/square/ gradle-android-test-test-plugin / numéros / 6 # Issuecomment-22881923


1 commentaires

Est mon build.gradle pas complet alors? Grâce à votre aide, je comprends maintenant que ./ gradlew installer fait référence au build.gradle dans le répertoire racine du plugin, mais d'où vient "installdebug"? Lorsque j'essaie gradle TestDebug , je suis toujours familier ne pouvait pas déterminer les dépendances de la tâche ': MyApp: TestDebug'.