Я бьюсь головой об стену, пытаясь понять, почему IntelliJ / Android сообщает «Пустой набор тестов». У меня есть небольшой проект с двумя модулями IntelliJ («Проекты» в Eclipse). В модуле модульного теста есть собственный файл AndroidManifest.xml, который я вставил внизу. Я пытаюсь запустить ActivityUnitTestCase
, поскольку тесты будут зависеть от Context
-object.
Имя пакета основного модуля - nilzor.myapp
. Имя пакета тестового модуля:nilzor.myapp.tests
Почему testBlah()
средство выполнения тестов не определяет -метод как тест?
<?xml version="1.0" encoding="utf-8"?>
<!-- package name must be unique so suffix with "tests" so package loader doesn't ignore us -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="nilzor.myapp.tests"
android:versionCode="1"
android:versionName="1.0">
<!-- We add an application tag here just so that we can indicate that
this package needs to link against the android.test library,
which is needed when building test cases. -->
<application>
<uses-library android:name="android.test.runner"/>
</application>
<!--
This declares that this application uses the instrumentation test runner targeting
the package of nilzor.myapp. To run the tests use the command:
"adb shell am instrument -w nilzor.myapp.tests/android.test.InstrumentationTestRunner"
-->
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="nilzor.myapp"
android:label="Tests for nilzor.myapp"/>
</manifest>
А вот и мой тестовый класс :;
package nilzor.myapp.tests;
public class NilzorSomeTest<T extends Activity> extends ActivityUnitTestCase<T>{
public NilzorSomeTest(Class<T> activityClass){
super(activityClass);
}
@SmallTest
public void testBlah(){
assertEquals(1,1);
}
}
Я прочитал основы тестирования , на деятельность тестирования документа и попытался после этого привет мира теста блог , даже если это для Eclipse. Я не могу заставить средство выполнения тестов найти и запустить мой тест. Что я делаю не так?
Вот некоторые из вопросов, в которых я до сих пор не уверен:
- Нужна ли мне аннотация над методом модульного тестирования?
- Нужно ли мне добавлять к методу префикс «test» или это только для тестов JUnit?
- Могу ли я иметь тесты в пакетах
nilzor.myapp.tests
?
Но главный вопрос этого поста - почему средство запуска тестов не обнаруживает мой тест ?
cmd+shift+t
ярлык, который автоматически создаст тестовый класс в правильном месте пакета, который соответствует классу, который вы в настоящее время редактируете.