我的测试一直在返回junit.framework.AssertionFailedError:找不到6个CheckBoxs! 通话时
if(!solo.isCheckBoxChecked(5)){
solo.clickOnCheckBox(5);
}
我不明白为什么会这样做,因为它会自动向下滚动(看电话时这很明显)。根据文档,我认为这应该像solo.clickOnText一样滚动,直到它找到它或放弃。此外,我使用完全相同的if语句与几个具有较低索引值的复选框,它从未失败。页面上有7个复选框。
答案 0 :(得分:1)
索引不是识别视图的最佳方式。如果我没错,机器人只会索引可见视图,因此如果向下滚动,视图的索引将会改变。这样,您始终可见视图(不同)但具有相同的索引。如果每个复选框都有不同,请尝试使用文本或R.id。
例如,您可以看到3个复选框(索引0-2),向下滚动,您仍然可以看到3个复选框(索引0-2),但不同的索引会被重写为可见的索引。我可能错了,但我不认为我是。