2017-04-25 13 views
0

私は完璧に動作し、このGradleのコマンドラインを持っている:Q:このGradleコマンドラインをgradleタスクでどのように変換するのですか?

/gradle app:testalldevicesproductionenv -Pandroid.testInstrumentationRunnerArguments.class=nameofclass 

私はこれとして実行しようとしました:

task testClassAllDevices(type: Exec){ 
    commandline 'gradle', 'app:testalldevicesproductionenv', 
       '-Pandroid.testInstrumentationRunnerArguments.class=nameofclass' 
} 

が、それはうまくいきませんでした...

を私は使用しても試してみましたargs {}でも動作しませんでした...

どのようにしてこのコマンドラインをgradleタスクに変換できますか?

+0

GradleからGradleコマンドを実行する理由はありますか? –

+0

複数のデバイスで実行するテストを含むクラスをいくつか持っています。特定の環境のテストクラスごとにタスクを作成したいのですが、これはコマンドラインでのみ行うことができます。これらのテストをしたくないたびにコマンドラインを送りたい –

+0

ああ、同じタスクを 'android.testInstrumentationRunnerArguments.class'プロジェクトプロパティの異なる値で何度も実行したいのですか? –

答えて

0

あなたはあなたは、Android Studioの設定を通じてGradleのためのコマンドライン引数を設定することができ、コマンドライン引数 -Pandroid.testInstrumentationRunnerArguments.class=nameofclass

を渡すIDE内からGradleのタスクapp:testalldevicesproductionenvを実行するように私はそれを理解しています。 設定 - >ビルドし、実行、展開 - >コンパイラ フィールドでは、その後、あなたが通常のようなGradleのタスクにタスクを実行することができ -Pandroid.testInstrumentationRunnerArguments.class=nameofclass

を置くことができるコマンドラインオプションのためにそこにあります。もちろん、これはあなたが構築するたびに、あるいはgradleのものが渡されますが、それが適用されないと無視されると思います。

+0

これは本当に面白いです、私はこれについて全く知りませんでした。しかし、残念ながらそれは私が探しているものではありません... –

関連する問題