ユニットテスト一、Junit
2696 ワード
前言
Android Studioは、テストのシンプル化を目的としています.数回クリックするだけで、ローカルJVMで実行されるJUnitテストを確立したり、デバイスで実行される機器テストを確立したりすることができます.
ローカルユニットテスト
適用シーン:これらのテストは、コンピュータのローカルJava仮想マシン(JVM)で実行されます.テストにAndroidフレームワーク依存項目がない場合や、Androidフレームワーク依存項目をシミュレートできる場合は、これらのテストを使用して実行時間を最小限に抑えることができます.
アプリケーションモジュールのbuild.gradleファイルでテストライブラリ依存項目を指定します.
dependencies {
// Required for local unit tests (JUnit 4 framework)
testCompile 'junit:junit:4.12'
}
手動で作成
AS自動作成
図:[画像のアップロードに失敗しました...(image-49 c 0 e 7-1516945046776)]
テストコードの作成
簡単に書きます.
public class UtilsTest {
@Before
public void setUp() throws Exception {
MockitoAnnotations.initMocks(this);
System.out.println("setUp");
}
@Test
public void test1() throws Exception {
Assert.assertEquals(Utils.test1(),"is test1");
}
@Test
public void test2() throws Exception {
Assert.assertEquals(Utils.test2("1","2"),"21");
}
}
テストの実行
テストを実行するには、次の手順に従います.
デフォルトでは、テスト実行時にAndroid Studioのデフォルトの実行構成を使用します.機器ランナや配置オプションなどのいくつかの運転設定を変更する場合は、Run/Debug Configurationsダイアログボックスで運転構成を編集できます(Run>Edit Configurationsをクリックします).
テストコードの詳細の作成
Assert
[局外画像アップロード中...(image-bcceca-1516945046776)]
JUnitの注釈と意味
[局外画像アップロード中...(image-cd 8 e 55-116945046776)]
タイムアウト
Junitは指定したタイムアウトパラメータを提供します.1つのテストケースで実行されるミリ秒数が指定したパラメータ値を超えた場合、Junitは自動的に失敗としてマークされます.
@Test(timeout=1000)
public void test() {
...
}
例外の取得
@Test(expected = ArithmeticException.class)
public void testException() {
int b = 1/0;
System.out.println(b);
}