无法使用selenium

时间:2016-08-23 12:49:47

标签: java selenium xpath selenium-webdriver

我试试这个xpath,但我不知道如何继续? 我在弹出菜单中有2个对象,我想选择第一个

页面的html是:

</div>
<input class="sprite form-enter" type="submit" value="" name="wobi">
</div>
<div class="container">
<img src="/_media/home/img/icons/pension.png">
<div class="login-text-container">
<a class="sprite form-enter" href="https://pension.wobi.co.il/login" value="" name="pension" type="submit"></a>
</div>
</div>

java代码是:

driver.findElement(By.xpath("//input[@class='sprite form-enter' and input//@name='wobi']")).click();
Thread.sleep(2000);

执行代码后,我得到以下异常:

  

线程中的异常&#34; main&#34; org.openqa.selenium.NoSuchElementException:没有这样的元素:无法找到元素:{&#34;方法&#34;:&#34; xpath&#34;,&#34;选择器&#34;:&#34; / / input [@class =&#39; sprite form-enter&#39;并输入/ @ name =&#39; wobi&#39;]&#34;}

我的代码有什么问题?

3 个答案:

答案 0 :(得分:1)

实际上你的错误是xpath,正确的xpath会是: -

//input[@class='sprite form-enter' and @name='wobi']

但我建议你,在这里尝试使用By.cssSelector(),因为它会比xpath快得多,如下所示: -

driver.findElement(By.cssSelector("input.sprite.form-enter[name = 'wobi']")).click();

答案 1 :(得分:0)

试试这个选择器:

//input[@class='sprite form-enter'][@name='wobi']

答案 2 :(得分:0)

好像你有一个复合类,尝试使用CSSSelector

driver.findElement(By.cssSelector(".sprite.form-enter")).click();