Как найти элемент с помощью селектора CSS в Selen WebDriver Java? - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь найти текст третьей роли Div:

<div class="jss295">
    <div class="section-header">
        <h3 class="section-header-title">LABELS</h3></div>
    <div role="button" class="jss300 jss299" tabindex="-1"><span class="jss313">system-all</span></div>
    <div role="button" class="jss300 jss299" tabindex="-1"><span class="jss313">paloaltonetworks_iPoiycgPut</span></div>
    <div role="button" class="jss300 jss299" tabindex="-1"><span class="jss313">system-paloaltonetworks</span></div>
</div>

Я попытался xpath следующим образом: driver.findElement(By.xpath("//span[contains(text(), '" + str + "')]")).getText(), где str - текст, который мне нужен.
xpath работает, но я бы хотел использовать cssSelector.

1 Ответ

0 голосов
/ 10 января 2019

: содержит () селектор псевдокласса CSS удален из спецификации CSS3. Если вы используете последние браузеры, это не будет работать, что противоречит новым стандартам CSS.

Если className уникально, вы можете использовать cssSelector как:

    span.valueOfClass

// Кажется, все имена классов одинаковы в вашем сценарии.

Полагаю, лучше использовать XPath.

Просто попробуйте:

    By.cssSelector(span[text()$=paloaltonetworks])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...