Как написать cssSelector для сложного селектора jQuery ниже - PullRequest
0 голосов
/ 08 мая 2019

У меня ниже селектор jQuery. Я проверяю это данными из консоли разработчика браузера.

jQuery("iframe#msg_body").contents().find("html body div span").text()

И мне нужно использовать это для cssSelector в селене. например, как показано ниже в формате

By expectedOutput  = By.cssSelector(The_expression_I_need);

Может кто-нибудь сказать мне, как это сделать?

1 Ответ

1 голос
/ 08 мая 2019

Как упоминал Рори МакКроссан, вы не можете просто получить доступ к элементу с помощью селектора CSS, поскольку он находится внутри iframe.

Вы должны переключиться на iframe и найти элемент.

new WebDriverWait(driver,30).until(ExpectedConditions.frameToBeAvailableAndSwitchToIt("msg_body"));
By expectedOutput = By.cssSelector("html body div span");

Тогда вы можете получить элемент, используя локатор.

Локатор вернет весь тег span внутри тега div внутри тега body. Таким образом, я предполагаю, что он, скорее всего, получит более одного элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...