Я хочу проверить, видимо ли вид, поэтому я использовал метод isShown() в представлении, но это совершенно бесполезно, потому что я создаю свои собственные представления, и это зависит от id, так что вот пример view :Robotium - Как проверить значение видимости вида
private static final String BTN_ADD_CURRENCY_ALERT = "action_add_currency_alert";
private View btn_AddAlert() {
return mainHelper.getView(BTN_ADD_CURRENCY_ALERT);
}
Здесь находится тело getView();
public View getView(String id) {
return solo.getView(id);
}
Затем я хочу увидеть, является ли этот элемент видимым (если нет, то должен возвращать значение false).
Я называю это, как этот
if (btn_addAlert().isShown()){...}
И проблема в том, что, когда я называю btn_addAlert()
и вид не виден я AssertionFailedError, и это даже не собирается isShown().
Я поймала исключение
private boolean catcher() {
try {
btn_addAlert().isShown();
return true;
} catch (AssertionFailedError e) {
return false;
}
}
, но это неправильно, потому что исключения не для этого, а также я должен ждать все время тайм-аута, чтобы сделать его бросить исключение. Затем он просто возвращает false.
Итак, что я могу сделать в этой ситуации?
Спасибо заранее.
Я думаю, что его проблема гораздо сложнее. Это не просто поиск функции «isShown». – Cocorico
btn_addAlert() - вот в чем проблема.Это ничего не изменит, потому что getVisibility() не будет выбрано. –