Android
AndroidStudio

Android Studio で Unit Test

More than 3 years have passed since last update.

Android Studioでプロジェクトを作ると、

androidTestが自動的に生成されるので、

Android Studio で Unit Testを試してみました。


準備

public class Sample {

//めっちゃ適当ですみません。
public boolean isTest(){
return true;
}
public boolean isNotTest(){
return false;
}

}

alt + enterで、

ss1.png

Create Testメニューを実行すると、

このようなダイアログが表示されまして、

ss2.jpg

必要に応じて、setUp/tearDownにチェックを入れます。

またすでに実装されているメソッドの一覧が表示され、

チェックを入れると、自動的にtest用メソッドが追加されます。

OKを押し進めると、

ss3.png

Test用クラスが生成されます。


Test実行

メニューの

Run → Edit Configurations..

から

ss4.jpg

+ボタンを押し、

ss5.jpg

Android Tests

を選択

初期状態は、 Module が no moduleになっているので、

所定のものを指定。(今回でしたら、app)

ss6.jpg

Testを実行したい場合は、

ツールバーにて先ほど作成して、Android Testsを指定し、

ss7.jpg

実行。


結果

仮にSampleTestに以下のようなコードを書いた場合


public void testIsTest() throws Exception {
Sample sample = new Sample();
//成功
assertEquals(sample.isTest(),true);
}

public void testIsNotTest() throws Exception {
Sample sample = new Sample();
//成功
assertEquals(sample.isNotTest(),false);
}

とすると、Testとして成功なので、

ss8.png

のような表示となります。

ただ、


public void testIsTest() throws Exception {
Sample sample = new Sample();
//成功
assertEquals(sample.isTest(),true);
}

public void testIsNotTest() throws Exception {
Sample sample = new Sample();
//失敗
assertEquals(sample.isNotTest(),true);
}

仮に失敗した場合は

こんな感じで、

 ss9.png

ログも出ます。

ActivityTestCaseなどもあるようなので、

そのあたりはまた試してみて追記するかもしれません(すみません。