現在、コマンドを使用してテストを実行しています
Gradle アプリ:connectedCheck
これはうまく機能しますが、テストが構築されているため、作成しようとしているときにそれらすべてを実行したくありません。私のテストの1つだけを実行する方法を知っている人はいますか? 前もって感謝します。
現在、コマンドを使用してテストを実行しています
Gradle アプリ:connectedCheck
これはうまく機能しますが、テストが構築されているため、作成しようとしているときにそれらすべてを実行したくありません。私のテストの1つだけを実行する方法を知っている人はいますか? 前もって感謝します。
これは、MariusVolkhart の助けを借りて行った詳細なソリューションです。
これをあなたに追加してくださいbuild.gradle
:
spoon {
if (project.hasProperty('spoonClassName')){
className = project.spoonClassName
}
}
これで、次のようなコマンドで特定のクラスを実行できます。
グラドル スプーン -PspoonClassName=< com.your.pakage.ClassName>
ただし、一連の特定のテストを実行する場合は、Android プロジェクトのルートにファイルを作成します: runAllTests.sh
. このスクリプトには、実行するテスト コマンドが含まれます。
次のように編集.sh
します。
#!/bin/sh
date +%b-%dT%H.%M > timestamp.out
sites="$HOME"/path/to/project/root
timestamp="$(cat "$sites"/timestamp.out)"
result_folder="$sites"/results
destdir="$result_folder/Results-$timestamp"
mkdir -p "$destdir"
echo "Directory created: ${destdir##*/}"
<---------- Here you start running the test --------------->
echo "Starting Master Setup"
gradle spoon -PspoonClassName=com.espresso.test.MasterSetup
cp -r "$sites"/app/build/spoon "$destdir"/MasterSetup
echo "Results saved to MasterSetup"
echo "Starting WorkoutSchedule"
gradle spoon -PspoonClassName=com.espresso.test.WorkoutSchedule
cp -f "$sites"/app/build/spoon "$destdir"/WorkoutSchedule
echo "Results saved to WorkoutSchedule"
echo "Starting Setting.test"
gradle spoon -PspoonClassName=com.espresso.test.Settings
cp -r "$sites"/app/build/spoon "$destdir"/Settings
echo "Results saved to Settings"
次に、スクリプトにパーミッション
1.cd
を付与します。スクリプト 2. タイプchmod u+x runAllTest.sh
あなたは設定されています。cd
ルートに移動してから、テストを実行するには、次のように入力します. runAllTest.sh
。
それで、これは何をしますか:
result
プロジェクトのルートにフォルダーが作成されていない場合は作成されます。Results-SOME-DATE
。注:このスクリプトは MAC 用に作成されました。Windows またはその他の場合、このスクリプトを変更する必要がある場合があります。
さらに、各フォルダーを開いて開くのは不便index.html
です。だから私はあなたに追加するためにこのスクリプトを書きましたbash_profile
:
function open-results () {
# the browser to open up `index.html' in.
browser='/Applications/Google Chrome.app/Contents/MacOS/Google Chrome'
# let the user know what directory we're looking in
printf "looking in %s" "$(pwd)"
echo ...
for paths in $(find ./ -name 'debug' -type d); do
for files in $(find "$paths" -name 'index.html'); do
open -a "$browser" "$files"
done
done
echo done
}
ここでcd
、ターミナルで に移動しResults-SOME-DATE
、 と入力しopen-results
ます。繰り返しますが、これは端末用に書かれています。OSによっては変更が必要な場合があります。でも構造は同じはず
これが役立つことを願っています。
次の手順で、Espresso テストの特定のメソッドのみをテストできます。1) Espresso テスト クラスを開きます (Android Studio を使用) 2) [Structure] ウィンドウに移動します (Android Studio の左側にあります) 3) 特定のテストを選択します実行したいメソッド 4) 右クリックして [実行...] を選択します。
これが役立つことを願っています。