У меня есть простое действие HelloWorld, которое я пытаюсь проверить с помощью теста Android JUnit.Само приложение работает так, как должно, но тест завершается неудачно с
"java.lang.RuntimeException: невозможно разрешить действие для: Intent {action = android.intent.action.MAIN flags = 0x10000000 comp = {no.helloworld.HelloWorld / no.helloworld.HelloWorld}} at no.helloworld.test.HelloWorldTestcase.setUp (HelloWorldTestcase.java:21) "
Это мой класс активности:
package no.helloworld;
import android.app.Activity;import
android.os.Bundle;
открытый класс HelloWorld extends Activity {
@ Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
} }
И тест:
открытый класс HelloWorldTestcase расширяет ActivityInstrumentationTestCase2 {
private HelloWorld myActivity;
private TextView mView;
private String resourceString;
public HelloWorldTestcase() {
super("no.helloworld.HelloWorld", HelloWorld.class);
}
@Override
protected void setUp() throws Exception {
super.setUp();
myActivity = this.getActivity();
mView = (TextView) myActivity.findViewById(no.helloworld.R.id.txt1);
resourceString = myActivity
.getString(no.helloworld.R.string.helloworld);
}
public void testPreconditions() {
assertNotNull(mView);
}
public void testText() {
assertEquals(resourceString, (String) mView.getText());
}
protected void tearDown() throws Exception {
super.tearDown();
}
Почему тест не пройден?Действие (конечно) определено в AndroidManifest.xml, и приложение работает так, как должно.