В вашем дизайне что-то не так, потому что когда вы создаете ящик, фрагменты остаются за ящиком. Так что всплывающее окно не должно перекрываться над навигационным ящиком. Здесь вы можете найти больше вещей https://developer.android.com/training/implementing-navigation/nav-drawer
Boolean bool = my_driver.findElements(By.id("my element id")).size()>0;
это тебе поможет.
Одним из основных принципов необработанного API WebDriver является ожидание того, что пользователь знает состояние DOM для автоматизируемой страницы. Это означает, что в логике API вызов findElement
с использованием локатора несуществующего элемента является исключительным условием, что делает исключение совершенно легитимным. Хотя можно утверждать, что ожидание, встроенное в поведение API, ошибочно, это выходит за рамки этого ответа. Если вам нужна логическая логика для определения того, существует ли элемент, вам нужен метод-обертка, как вы уже обнаружили. В рамках этого метода оболочки у вас есть два варианта:
Используйте findElement
и поймайте NoSuchElementException
. Обратите внимание, что использование WebDriverWait
неявно ловит это исключение для вас, как и семантический эквивалент.
Используйте findElements
(обратите внимание на «s»), который возвращает пустой список без исключения, если элемент не существует.