2016-12-30 47 views
4

我需要我的腳本來點擊一個按鈕。到目前爲止,我已經試過這 -Selenium Webdriver找到一個元素(一個按鈕)

driver.findElement(By.id("button_click")).click(); 

和HTML此按鈕是 -

<td class="Button"> 
<input class="btn" value="Click here to get started" name="button_click" onclick="this.form.action = '/servlet/servlet.Integration?lid=0076878676545487SVD2&eid=465124652J9ly&ic=1&retURL=%24848676854684y&wrapMassAction=1&scontrolCaching=1&linkToken=gituuiyiiuhjgd46etfjgioyyo8yo8ylihvTDNfLWhzdm5KLFlXWmtNR0po'; this.form.onsubmit = function() { return true }" title="page title" type="submit"/> 
</td> 

但它不識別右。

回答

3

您嘗試通過id搜索您的按鈕,但是您的按鈕沒有id。該解決方案是一個id與相應的值添加到按鈕:

<td class="Button"> 
<input class="btn" value="Click here to get started" id="button_click" name="button_click" onclick="this.form.action = '/servlet/servlet.Integration?lid=0076878676545487SVD2&eid=465124652J9ly&ic=1&retURL=%24848676854684y&wrapMassAction=1&scontrolCaching=1&linkToken=gituuiyiiuhjgd46etfjgioyyo8yo8ylihvTDNfLWhzdm5KLFlXWmtNR0po'; this.form.onsubmit = function() { return true }" title="page title" type="submit"/> 
</td> 

如果這是不是一種選擇,那麼你可以通過name搜索元素,但隨後的列表將被退回,你將需要從那裏選擇正確的元素,如果只有一個元素,這非常簡單。

+0

謝謝。我只是分開那個名字的東西 – arm

+0

高興,新年快樂! –

1

您可以使用

driver.findElement(By.Name("button_click")).click(); 

driver.findElement(By.CssSelector("input.btn:nth-of-type(X)")).click(); 

有可能是多個輸入與您的網頁「BTN」類,因此X將代表至極你想其中的一個按鈕。

相關問題