cssSelector ("select [title = \" Sort By \ "]") - PullRequest
0 голосов
/ 03 июня 2018

В сценарии селена Сортировка раскрывающегося списка с использованием

new Select(driver.findElement(By.cssSelector("select[title=\"Sort By\"]"))).selectByVisibleText("Name");

Может кто-нибудь объяснить, пожалуйста, эту часть cssSelector("select[title=\"Sort By\"]" вышеприведенного утверждения.Спасибо!

Ответы [ 2 ]

0 голосов
/ 03 июня 2018
cssSelector("select[title=\"Sort By\"]")

это один из методов поиска веб-элементов / элементов.

Вы, наверное, слышали о xpath, который является одним из способов найти элемент / элементы на веб-странице.

Более того, select - это тег в HTML .title - это атрибут , а Sort By - это значение атрибута.

Точно так же:

HTML :

<select id="sel" class="drop-down" title="Sort By">  
  <options>..</options>
  <options>..</options>
  <options>..</options>
</select>  

Теперь, если вам нужно написать cssSelector , вы можете написатьвот так:

tagname[attribute="attribute value"]  

select[id="sel"] 

или

select[class="drop-dwon"]

или

select[title="Sort By"]  

Надеюсь, это будет полезно!

0 голосов
/ 03 июня 2018

new Select(driver.findElement(By.cssSelector("select[title=\"Sort By\"]"))).selectByVisibleText("Name");

Вы выбираете с помощью селектора CSS https://www.w3schools.com/cssref/css_selectors.asp. Альтернативой является XPath, который является более мощным, но сложным в освоении.

Что делает эта часть By.cssSelector("select[title=\"Sort By\"]")это выбрать все select элементы, которые имеют атрибуты title, установленные равными "Сортировать по".Хотя с префиксом driver.findElement( вы запрашиваете только один элемент, первый.По крайней мере, если бы это был python, Java могла бы отличаться, но это не было ни в вашем вопросе, ни в тегах.

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