i am new to Robotium.I'm facing an issue "junit.framework.AssertionFailedError" while executing the test case which using Robotium.Test scenario is checking Back button functionality.here's my code
package com.example.test;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.EditText;
import com.jayway.android.robotium.solo.Solo;
import com.example.app.R;
import com.example.app.LoginActivity;
import com.example.app.AccountCardListActivity;
import com.example.app.ReceiptListActivity;
import com.example.app.WithdrawalListActivity;
public class Back_Concerto_425 extends ActivityInstrumentationTestCase2<LoginActivity>{
public Back_Concerto_425() {
super(LoginActivity.class);
// TODO Auto-generated constructor stub
}
private Solo solo;
protected void setUp() throws Exception
{
solo = new Solo(getInstrumentation(), getActivity());
}
public void testbackbutton()
{
solo.enterText(0, "username");
solo.enterText(1, "password");
solo.clickOnButton(0);
solo.waitForActivity("com.example.app.WithdrawalListActivity", 3000);
assertTrue(solo.searchText("WithdrawlListActivity"));
solo.clickOnButton("View Receipts");
solo.waitForActivity("com.example.app.ReceiptListActivity",3000);
assertTrue(solo.searchText("Receipts"));
solo.goBackToActivity("com.example.app.WithdrawalListActivity");
assertTrue(solo.searchButton("View Receipts"));
assertTrue(solo.searchButton("New withdrawal"));
}
public void tearDown() throws Exception
{
try
{
solo.finalize();
}
catch (Throwable e)
{
e.printStackTrace();
}
super.tearDown();
}
}
Here's My error log
[INFO] Start [15/16]: com.ncr.mobile.mcw.test.WithdrawlListActivityTest#testreceiptsbutton
[INFO] FAILURE:com.ncr.mobile.mcw.test.WithdrawlListActivityTest#testreceiptsbutton
[INFO] junit.framework.AssertionFailedError
at com.ncr.mobile.mcw.test.WithdrawlListActivityTest.testreceiptsbutton(WithdrawlListActivityTest.java:45)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214)
at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199)
at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:190)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:175)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1584)
Please let me know if there is any mistake in my code.
once one of my friend faced the same problem he resolved by giving timeout period,similarly you haven't mentioned timeout period in waitactivity method
or by just using WaitActivity
method without timeout argument
.
Hope it helps