メモ帳アプリケーションのサンプルテストを作成しようとしています。次のコードでは、警告が表示され、テストを実行できません。これを解決するのを手伝ってください。警告に「The constructor ActivityInstrumentationTestCase2<NotesList>(String, Class<NotesList>) is deprecated
」と表示され、Eclipseでの実行はtestAddNote();
で終了します。ログカットログが必要な場合は、元に戻してください。Robotium_constructor NotepadTestメソッドで廃止されたメッセージ
package com.example.android.notepad.test;
import com.example.android.notepad.*;
import com.jayway.android.robotium.solo.Solo;
import android.test.ActivityInstrumentationTestCase2;
import android.test.suitebuilder.annotation.*;
public class NotePadTest extends ActivityInstrumentationTestCase2<NotesList> {
private Solo solo;
public NotePadTest() {
super("com.example.android.notepad", NotesList.class);
}
@Override
public void setUp() throws Exception {
solo = new Solo(getInstrumentation(), getActivity());
}
@Smoke
public void testAddNote() throws Exception {
solo.clickOnButton(0);
//Assert that NoteEditor activity is opened
solo.assertCurrentActivity("Expected NoteEditor activity", "NoteEditor");
//In text field 0, add Note 1
solo.enterText(0, "Note 1");
solo.goBack();
//Clicks on menu item
solo.clickOnMenuItem("Add note");
//In text field 0, add Note 2
solo.enterText(0, "Note 2");
//Go back to first activity named "NotesList"
solo.goBackToActivity("NotesList");
boolean expected = true;
boolean actual = solo.searchText("Note 1") && solo.searchText("Note 2");
//Assert that Note 1 & Note 2 are found
assertEquals("Note 1 and/or Note 2 are not found", expected, actual);
}
@Override
public void tearDown() throws Exception {
//Robotium will finish all the activities that have been opened
solo.finishOpenedActivities();
}
}
これはのStackTrace
java.lang.NoClassDefFoundError: com.jayway.android.robotium.solo.Solo
at com.example.android.notepad.test.NotePadTest.setUp(NotePadTest.java:37)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:537)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1551)
それが解決してしまった他の人々がこのようなエラーの場合をbenefitinできるよう – srinivasv
は、あなたがあなたの答えにポストを作成することができますありがとうございましたか! –
"NoClassDefFoundError"はandroid sdkがバージョン17にアップグレードされたためです。私たちはJava build path.Butの "注文とエクスポート"タブでロボティクスをチェックする必要がありますが、私はまだコンストラクタの廃止された戦争のための解決策を見つけることはできません。 – srinivasv