0

org.gradle.parallel=truegradle.propertiesにあります。私はバックエンドのGoogle Cloudモジュールを実行しており、並列にいくつかのエスプレッソテストを実行するconnectedAndroidTestを実行しています。テストは成功し、タスクは緑色でOK(画像参照)ですが、接続されたテストタスクは実際には終了しないか、または行をプリントすることはなく、キュー内の次のタスクに移動しません。Gradleの並列タスクが終了していません(connectedAndroidTest)

タスクを単独で実行すると、そのタスクが終了し、行が印刷されます。

マイルートbuild.gradleファイル:

buildscript { 
    repositories { 
     jcenter() 
     google() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:3.0.0' 

     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
     google() 
    } 
} 

// Task to set up GCE, runs paid flavor test and shuts down the server. 
task configureTest { 
    dependsOn 'startBackend', 'runInstrumentedTest', 'stopBackend' 
    doLast { 
     println 'Tests carried out and local server shut down' 
    } 
} 

task startBackend { 
    dependsOn ':backend:appengineRun' 
} 

// Run InstrumentedTest only in paid flavor as there is no interstitial ad. 
task runInstrumentedTest { 
    mustRunAfter 'startBackend' 
    dependsOn ':app:connectedPaidDebugAndroidTest' 
    doLast { 
     println 'The test finished.' 
    } 
} 

task stopBackend 
    mustRunAfter 'runInstrumentedTest' 
    dependsOn ':backend:appengineStop' 
} 

Screenshot

答えて

1

は、任意のブロックを避けるために、デーモンモードでのバックエンドを開始し、それはあなたが正しくテストを完了するのに役立つかどうかを確認してみてください。

task startBackend { 
     project(":backend").afterEvaluate { backend -> 
      backend.extensions.appengine.daemon = true 
     } 
     // ... 
    } 

Seの詳細については、次のポスト:

それを行うことができるようにするには、バックエンドの build.gradleファイルに以下を追加します。
関連する問題