我的申请表中有一个链接,如下所述:
<a title="xyz" href="abc/home?locale=en"> some text </a>
我写了一个cssSelector来获取这个元素。
a[href*='home?locale=en']
问题是这个css选择器在Firebug,Firepath和Chrome控制台中运行良好。但是它没有使用Selenium WebDriver识别元素,即By.cssSelector("a[href*='home?locale=en']")
不起作用。
我发现字符?
是问题所在。但是我不知道如何绕过它。
答案 0 :(得分:0)
使用href
或By.linkText()
来识别元素,而不是将By.partialLinkText()
与cssSelector一起使用。尝试以下选择器。
driver.findElement(By.partialLinkText('some text'))
答案 1 :(得分:0)
问题是我的服务器在href之后附加了一个jsessionid。浏览器端没有附加jsessionId。
System.out.print期间的 href
https://abc/home;jsessionid=3213323123123AAA3232?locale=en
浏览器端的相同href:
/abc/home?locale=en