Selenium HtmlUnitDriver没有点击按钮

时间:2014-06-18 17:17:21

标签: java button selenium webdriver

我想点击按钮:

<input type="submit" value="Stock!" class="button" tabindex="5" />

这是我的代码:

    WebElement stock = driver.findElement(By.xpath("//*[@id=\"stock\"]/table/tbody/tr[4]/td/input[5]"));
    stock.click();

程序运行时没有丢失任何错误,但没有点击按钮,程序没有完成任务。

4 个答案:

答案 0 :(得分:1)

尝试使用SendKeys而不是Click。虽然看起来很奇怪,但它在很多时候对我有用。

stock.sendKeys(Keys.ENTER);

或者您可以非常简单地执行此操作,如下所示。这将自动以元素所在的特定形式提交值。生活变得轻松。

stock.submit();

您无需使用输入(type = submit)进行submit()操作。您可以使用html表单中的任何其他元素。

答案 1 :(得分:0)

删除\&#34;并用&#39;替换它。但是,您实际上没有id属性,因此无法正常工作。

尝试: &#34; //输入[@tabindex =&#39; 5&#39;]&#34;

如果实际设置了标签索引,那么应该只有一个标签索引。如果出于某种原因存在多个,则可以使用完整的xpath,但将整个xpath与编号索引一起使用确实不是一个好主意。如果有任何变化,这些可能很容易破裂。

答案 2 :(得分:0)

您可以使用cssselector,它看起来很干净。

WebElement stock = driver.findElement(By.CssSelector("input[value = 'Stock!']")).Click();

答案 3 :(得分:0)

尝试

driver.findElement(By.className(&#34;按钮&#34))点击();