Есть приложение, которое измеряет visibility определенных элементов на странице с помощью вставки в страницу java script кода и записи лога. И в одном специфичном тесте мне надо проверить что объект на странице пользователю виден не был вообще. Проверить я это могу из лога, но проблема заключается в том, что я не знаю как находясь на одной странице открыть новую вкладку с определенным url адресом, в фоне. Переходить мне на нее новую вкладку не надо вообще.
И в идеалле сдлеать без java script. Sendkeys у меня почему то вообще не сработал, и думаю это мне подойдет.
Selenide.switchTo() новую вкладку не создает. Еще другая проблема, я так поняла надо создавать кастомный проифль браузера для открытый новых вкладок вместо окон?
Как вариант, открыть лог в другой вкладке, проверить, что всё OK, закрыть лог (соответственно, вернётесь на предыдущую вкладку). Это если нет вариантов проверить visible на соответствующем контроле, не дёргая лог.
А если вообще без перехода то придется изворачиваться с js.
Так же если новая вкладка у вас открывается кликом по элементу то можно с помощью селениума сделать Ctrl+click по нему и будет так как вы хотите (без перехода).
Какое-то противоречие в описании задачи. Нужно проверить лог. Лог открывается в новой вкладке, на нее нельзя переходить (по условию), и эти логи в другой вкладке “я вообще из другого места проверяю” проверяются из другого места. Что?
Насколько я понял в предлагаемом скрипте все равно совершается переход на вкладку, а следом она закрывается, аналогично можно сделать и на селениуме через getWindowHandles.
Насколько я понял, в определенный момент выполнения теста вам необходимо сходить на определенный URL не теряя фокуса с текущей вкладки. Если это так, то в качестве костыля могу предложить:
В момент, когда нужно открыть вкладку на фоне, вместо этого запустить еще один браузер в безголовом режиме сделать все дела в нем и закрыть его.
@Tatyana_Durova а вы не рассматривали вариант без вкладок и браузеров? Взять любой HttpClient и сделать через него запрос по тому URL который вас интересует, проверить что в Response Body есть то что нужно.