Как провести модульное тестирование модуля Android - PullRequest
2 голосов
/ 12 ноября 2019

У меня есть модуль библиотеки Android, в который я хотел бы добавить модульные тесты. Нужно ли иметь модуль в проекте, чтобы можно было запускать тесты? Есть ли способ проверить модуль независимо от проекта?

1 Ответ

1 голос
/ 12 ноября 2019

Чтобы использовать тесты JUnit для вашего приложения Android, вам нужно добавить его в качестве зависимости к файлу сборки Gradle.

dependencies {
// Unit testing dependencies
testCompile 'junit:junit:4.12'
// Set this dependency if you want to use the Hamcrest matcher library
testCompile 'org.hamcrest:hamcrest-library:1.3'
// more stuff, e.g., Mockito
}

Вы также можете указать системе сборки Gradle возвращать значения по умолчанию для вызовов методов вandroid.jar со следующей конфигурацией в вашем файле сборки Gradle.

android {
// ...
testOptions {
unitTests.returnDefaultValues = true
}
}


 In your app/src/test directory create the following two test methods for the ConverterUtil class.

 package com.vogella.android.temperature.test;

import static org.junit.Assert.*;

import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;

 import com.vogella.android.temperature.ConverterUtil;

 public class ConverterUtilTest {

 @Test
 public void testConvertFahrenheitToCelsius() {
    float actual = ConverterUtil.convertCelsiusToFahrenheit(100);
    // expected value is 212
    float expected = 212;
    // use this method because float is not precise
    assertEquals("Conversion from celsius to fahrenheit failed", expected, actual, 
    0.001);
   }

  @Test
   public void testConvertCelsiusToFahrenheit() {
    float actual = ConverterUtil.convertFahrenheitToCelsius(212);
    // expected value is 100
    float expected = 100;
    // use this method because float is not precise
    assertEquals("Conversion from celsius to fahrenheit failed", expected, actual, 
 0.001);
 }

 }

Убедитесь, что ваши модульные тесты выполнены правильно, запустив тестовые тесты. Они должны успешно работать. см. Ссылку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...