Для списков просмотра вы можете использовать следующий метод solo.getCurrentListViews()
, который возвращает количество представлений списка на текущем экране, а затем выполняет итерацию или получает другие типы объектов ( виджеты Android ), например, вам нужно чтобы щелкнуть изображений из всех списков на экране, которые не перенаправляют вас на другой вид деятельности и только изменяют состояние других объектов:
ArrayList<ListView> lw = solo.getCurrentListViews(); // get all list views
// logging to logcat
Log.i("stats", "number of list views on the current screen: " + aLw.size());
if (aLw.size() != 0)
for (ListView l: aLw) {
// Take all image views from list and click each
ArrayList <ImageView> aIw = solo.getCurrentImageViews(l);
Log.i("stats", "list view " + l + " contains " + iw.size() + " image views.");
if (aIw.size() != 0)
for (int i = 0; i < aIw.size(); ) {
// clicking
solo.clickOnView(aIw.get(i));
Log.i("click", "image view " + i " clicked.");
}
}
Вы можете ввести текст для editText просмотра или получить текст из textViews.
Вы можете комбинировать Robotium с API Java и Android. Например, проверьте видимость изображений на экране, используя метод getVisibility () и сравнив его с тремя основными состояниями View.GONE , View.VISIBLE , View.INVISIBLE . Или вы можете проверить соединение, используя метод Java HttpURLrequest перед выполнением ваших тестов.
Если у вас есть источник, вы можете брать объекты из любого макета, зная его идентификатор! Также существует много удивительных вещей, таких как solo.waitForActivity()
, solo.assertMemoryNotLow()
, solo.takeScreenShot()
.
Дополнительные примеры использования Robotium можно найти здесь, присоединившись к сообществу Robotium .