Activity
私は単純なものを aから起動しようとしましたがActivityUnitTestCase
、成功しませんでした。明らかな何かが欠けていると思いますが、それが何であるかわかりません... からアクティビティを実行できましたが、 からActivityInstrumentationTestCase2
ではありませんでしたActivityUnitTestCase
。開始しようとしているアクティビティには、クリックすると別のアクティビティを起動する単一のボタンが含まれています。
まず、ここに私のコードがありますActivityUnitTestCase
:
public class TestingActivityTest extends ActivityUnitTestCase<TestingActivity> {
private Intent startIntent;
public TestingActivityTest() {
super(TestingActivity.class);
}
@Override
protected void setUp() throws Exception {
super.setUp();
startIntent = new Intent(getInstrumentation()
.getTargetContext(), TestingActivity.class);
}
public void testLaunchingSubActivity() {
startActivity(startIntent, null, null);
View button = getActivity().findViewById(R.id.forward_button);
button.performClick();
assertNotNull(getStartedActivityIntent());
assertTrue(isFinishCalled());
}
}
このテストを実行すると、次のエラーが発生します。
junit.framework.AssertionFailedError at junit.framework.Assert.fail(Assert.java:48) at junit.framework.Assert.assertTrue(Assert.java:20) at junit.framework.Assert.assertNotNull(Assert.java:218) junit.framework.Assert.assertNotNull(Assert.java:211) で android.test.ActivityUnitTestCase.startActivity(ActivityUnitTestCase.java:147) で com.test.temp.TestingActivityTest.setUp(TestingActivityTest.java:27) で junit. Framework.TestCase.runBare(TestCase.java:132) at junit.framework.TestResult$1.protect(TestResult.java:115) junit.framework.TestResult.runProtected(TestResult.java:133) at android.support.test. internal.runner.junit3.DelegatingTestResult.runProtected(DelegatingTestResult.java:90) at junit.framework.TestResult.run(TestResult.java:118) at android.support.test.internal.runner.junit3.AndroidTestResult.run(AndroidTestResult.java:49) at junit.framework.TestCase.run(TestCase.java:124) at android.support.test.internal.runner.junit3.NonLeakyTestSuite$NonLeakyTest.run(NonLeakyTestSuite.java:63) at junit .framework.TestSuite.runTest(TestSuite.java:243) で junit.framework.TestSuite.run(TestSuite.java:238) で android.support.test.internal.runner.junit3.DelegatingTestSuite.run(DelegatingTestSuite.java:103) ) android.support.test.internal.runner.junit3.AndroidTestSuite.run(AndroidTestSuite.java:63) で android.support.test.internal.runner.junit3.JUnit38ClassRunner.run(JUnit38ClassRunner.java:90)でjunit.runners.Suite.runChild(Suite.java:128) で org.junit.runners.Suite.runChild(Suite.java:27) で org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) でorg.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) で org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) で org.junit.runners.ParentRunner$2.evaluate(ParentRunner) .java:268) で org.junit.runners.ParentRunner.run(ParentRunner.java:363) で org.junit.runner.JUnitCore.run(JUnitCore.java:137) で org.junit.runner.JUnitCore.run( JUnitCore.java:115) で android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:54) で android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:228) で android.app .Instrumentation$InstrumentationThread.run(Instrumentation.java:1741)268) org.junit.runners.ParentRunner.run(ParentRunner.java:363) で org.junit.runner.JUnitCore.run(JUnitCore.java:137) で org.junit.runner.JUnitCore.run(JUnitCore.java) :115) android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:54) で android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:228) で android.app.Instrumentation$ InstrumentationThread.run(Instrumentation.java:1741)268) org.junit.runners.ParentRunner.run(ParentRunner.java:363) で org.junit.runner.JUnitCore.run(JUnitCore.java:137) で org.junit.runner.JUnitCore.run(JUnitCore.java) :115) android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:54) で android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:228) で android.app.Instrumentation$ InstrumentationThread.run(Instrumentation.java:1741)実行 (Instrumentation.java:1741)実行 (Instrumentation.java:1741)
アクティビティを起動しようとすると、テストは失敗します。このドキュメンテーション ページと非常によく似たコードを使用しました。
ありがとうございました