开始使用Robotium。找不到EditText

时间:2014-03-13 22:49:47

标签: android robotium android-testing

我刚刚开始使用Robotium,编写我的第一个测试,并且我得到了这个奇怪的错误:

junit.framework.AssertionFailedError: 2131165500 EditTexts are not found!

这是我的测试用例

public class TestRegistrationActivity extends ActivityInstrumentationTestCase2<RegistrationActivity>{

    private Solo solo;

    public TestRegistrationActivity() {
        super(RegistrationActivity.class);
    }

    public void setUp() throws Exception {
        solo = new Solo(getInstrumentation(), getActivity());
    }


    @Override
    public void tearDown() throws Exception {
        solo.finishOpenedActivities();
    }

    @UiThreadTest
    public void testSomeStuff(){
        for (View v : solo.getCurrentViews()) {
            Log.d(v.getClass().getSimpleName()+": "+v.getId());             
        }

        solo.getEditText(R.id.txtCountryCode);
    }
}

这是日志:

03-13 17:06:18.318: D/DEBUG(7907): EditText: 2131165500  
03-13 17:06:18.322: D/DEBUG(7907): PhoneEditText: 2131165501

如你所见:

  1. solo.getCurrentViews()确实识别出身份2131165500的视图存在。
  2. solo.getEditText(R.id.txtCountryCode)行始终失败。
  3. 可能出现什么问题?

1 个答案:

答案 0 :(得分:2)

固定。

问题在于我认为solo.getEditText(int)View id作为参数。取而代之的是视图的索引。