Java 如何使用Selenium检查标题?
嘿,我解决不了这个小问题。我必须使用Java 如何使用Selenium检查标题?,java,selenium,junit,Java,Selenium,Junit,嘿,我解决不了这个小问题。我必须使用cssSelector或xpath检查网页上元素的标题。但我不明白应该使用什么命令来读取元素标题。这是我的密码: assertEquals(driver.findElement(By.xpath("//*[@id=\"main-panel\"]/div[16]/a/dl/dd[1]")), "Создание, удаление и модификция пользователей, имеющих право доступа к Jenkins"); ass
cssSelector
或xpath
检查网页上元素的标题。但我不明白应该使用什么命令来读取元素标题。这是我的密码:
assertEquals(driver.findElement(By.xpath("//*[@id=\"main-panel\"]/div[16]/a/dl/dd[1]")), "Создание, удаление и модификция пользователей, имеющих право доступа к Jenkins");
assertEquals(driver.findElement(By.cssSelector("a[title=\"Управление пользователями\"] > dl > dd")), "Управление пользователями");
Xpath和cssSelector是正确的。这是HTML代码,如果你需要的话
<a href="securityRealm/" title="Управление пользователями"><img src="/static/4be99593/images/48x48/user.png" alt="manage-option" class="icon"><dl><dt>Управление пользователями</dt><dd>Создание, удаление и модификция пользователей, имеющих право доступа к Jenkins</dd><dd></dd></dl></a>
这将证明元素的标题是否正确:
assertEquals(driver.findElement(By.cssSelector("a[title='Управление пользователями']")).getAttribute("title"), "Управление пользователями");
但我要说的是,如果找到了带有这个CSS选择器的元素:a[title='ППззззззззззззззззззззззззз。没有必要用assert再次证明它
或者,如果要检查元素的文本值,可以使用以下xPath:
//a/dl[contains(., 'Управление пользователями') and contains(., 'Создание, удаление и модификция пользователей, имеющих право доступа к Jenkins')]
你可以证明这样的元素是否存在:
driver.findElement(By.xpath("//a/dl[contains(., 'Управление пользователями') and contains(., 'Создание, удаление и модификция пользователей, имеющих право доступа к Jenkins')]"));
如果找不到元素,它将抛出异常。使用linkText选择标题