Selenium findElement (By.cssSelector) для «текста», не имеющего связанного тега - PullRequest
0 голосов
/ 05 мая 2020

Рассмотрение кода HTML с этим в качестве варианта раскрывающегося списка веб-страницы:

<div class="select5-result-label" id="select5-result-label-31" role="option">
    <span class="select2-match"></span>
    "Jedi"
</div>

Попытка использовать селекторы селена css для выбора / щелчка по опции «Джедай». Попытка:

- driver.findElement(By.id("select5-result-label-31")).click();  
- driver.findElement(By.cssSelector("div#select5-result-label-31")).click();
- driver.findElement(By.cssSelector("div[text='Jedi']")).click();

, но ни одна из вышеперечисленных попыток не смогла выбрать значение раскрывающегося списка. Возвращает сообщение об ошибке времени выполнения:

*** Element info: {Using=css selector, value=div[text='Jedi']}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

Подозреваю, что это потому, что значение «Джедай» не имеет тега. Есть предложения выбрать / щелкнуть опцию выше? Очень признателен, заранее спасибо.

...