cssSelector("选择[title = \" Sort by \"]")

时间:2018-06-03 15:52:38

标签: selenium automated-tests

在selenium脚本中使用

对下拉列表进行排序

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

任何人都可以向我解释上述声明的cssSelector("select[title=\"Sort By\"]"部分。 谢谢!

2 个答案:

答案 0 :(得分:1)

select

这是定位web元素/元素的技术之一。

您一定听说过xpath,这是在网页中定位元素/元素的方法之一。

此外,title HTML 中的标记。 <select id="sel" class="drop-down" title="Sort By"> <options>..</options> <options>..</options> <options>..</options> </select> 属性,排序方式是属性的值。

就像这样:

HTML

tagname[attribute="attribute value"]  

select[id="sel"] 

现在如果你必须写 cssSelector ,你可以像这样写:

select[class="drop-dwon"]

select[title="Sort By"]  

composer clear-cache
composer dump-autoload

希望这会有所帮助!

答案 1 :(得分:0)

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可能会有所不同,但不在你的问题或标签中。