Java Selenium中不允许使用复合类名
我在搜索要选择的按钮时遇到了一个问题。当我尝试使用Java Selenium中不允许使用复合类名,java,html,selenium,Java,Html,Selenium,我在搜索要选择的按钮时遇到了一个问题。当我尝试使用 if (driver.getPageSource().contains("pager")) { WebElement pageSelector = driver.findElement(By.className("pager__item pager__item--last")); System.out.println("hello"); pageSelector.c
if (driver.getPageSource().contains("pager")) {
WebElement pageSelector = driver.findElement(By.className("pager__item pager__item--last"));
System.out.println("hello");
pageSelector.click();
}
但是,它给了我一个错误-不允许使用复合类名
。我读过关于这个问题的文章,似乎使用csselector是解决这个问题的方法,而不是使用By.className
。但是,我无法让csSelector工作。这是包含我正在搜索的元素的html片段
<div class="view-content">
<div class="item-list">
</div>
<h2 class="element-invisible">Pages</h2>
<ul class="pager">
<li class="pager__item pager__item--current">1</li>
<li class="pager__item">
<li class="pager__item">
<li class="pager__item">
<li class="pager__item">
<li class="pager__item">
<li class="pager__item pager__item--next">
<li class="pager__item pager__item--last">
<a href="/blogs?date_filter[value]&field_term_programs_offices_tid=All&page=5" title="Go to last page">last »</a>
页
- 1
-
-
-
-
-
-
-
如何选择“pager\uu item pager\uu item--last”项?您只需搜索
pager\uu项--last
类-它唯一地标识元素,给定您提供的HTML代码:
driver.findElement(By.className("pager__item--last"));
或者,使用CSS选择器:
driver.findElement(By.cssSelector(".pager__item--last"));
或者,进行精确的类匹配:
driver.findElement(By.cssSelector("li[class='pager__item pager__item--last']"));