In such scenarios, here is what you can do
Найдите xpath элемента на разных устройствах Android и объявите их в объектной модели страницы.
@AndroidFindBy(xpath="//<xpath of the element>")
private MobileElement element1;
@AndroidFindBy(xpath="//<xpath of the element>")
private MobileElement element2;
Вы можете написать вспомогательную функцию в классе объектной модели Page, которая сообщит вам, что ли конкретный элемент существует или нет на экране.
public boolean elementExist (Xpath xpath) {if (! AppiumDriver.findElements (xpath) .isEmpty ()) {LOGGER.info ("Элемент существует"); вернуть истину; } else {LOGGER.info («Элемент не существует»); вернуть ложь; }}
Затем в тестовом примере вы можете сделать что-то вроде
if(elementExist(element1)) {
click(element1);
} else if (elementExist(element2)) {
click(element2);
}...
Используйте setMaxResults () метод на Критериях.
Criteria crit = sess.createCriteria(Cat.class);
crit.setMaxResults(maxResults);
crit.setFirstResult(firstResultIndex);
List cats = crit.list();
http://hibernate.org/hib_docs/v3/reference/en/html/querycriteria.html
http://www.hibernate.org/hib_docs/v3/api/org/hibernate/Criteria.html
Кроме того, взгляните на Раздел выборки пакета 19.1.4, и 19.1.5 должен сделать. http://www.hibernate.org/hib_docs/v3/reference/en-US/html_single/#queryhql-joins-forms
Вот что я планирую сделать: Создайте временную таблицу с идентификаторами объектов всех строк, которые мне нужно экспортировать:
Insert into BatchTable (ID, Seq) Select (O.ID, Sequence.Next)
From MyObject O Where ...
В небольших единицах рабочей нагрузки в объектах:
Select Min(B.Seq), Max(B.Seq) From BatchTable;
for (batch = minBatch; batch <= maxBatch; batch += size) {
beginTransaction();
results = query("Select O From MyObject O, BatchTable B
Where O.ID = B.ID and (? <= B.Seq AND B.Seq < ?)");
exportXML(results);
for (MyObject O : results) {
O.setProcessed(True);
O.update();
}
commit();
}
Если вам не нужно отмечать объекты как выполняемые, вы можете просто использовать scroll () и удалить объекты из сеанса по мере того, как вы закончите с ними.