希望有人可以幫我解決我的問題。我花了大部分時間嘗試幾乎所有可以在這裏或通過Google找到的解決方案。Selenium Webdriver - 無法點擊按鈕 - 查找元素
我會切入正題。我有一個測試,在一個屏幕上登錄。第二個屏幕選擇一個角色並繼續前進。我能夠進入角色選擇屏幕,但無法前進,因爲Selenium不會點擊按鈕,無論我做什麼。
有趣的是,這將與IDE一起工作,但將代碼導出到java並使用webdriver運行它也不起作用。這部分對我來說毫無意義,因爲我認爲IDE導出應該很容易運行。唯一的區別是我可以看到,webdriver提取了一個無配置文件的Firefox,而IDE運行在我的配置文件中 - 不確定這與它有什麼關係,但是想把它扔到那裏。
第一個按鈕和第二個按鈕之間的唯一區別是HTML中的自動對焦命令。
整個網頁,我已經試過了最後一件事,發現我已經嘗試了多種解決方案是
new WebDriverWait(driver,120).until(ExpectedConditions.elementToBeSelected(By.name("submit")));
driver.findElement(By.name("submit")).click();
這也不起作用。我已經嘗試了幾個變種,並且大多數時候webdriver會超時或跳過這一步,然後傳遞它,然後在頁面未前移時繼續執行下一步。
有沒有人有任何建議?如果您有任何問題,或者如果我沒有給出足夠的信息,我可以給您更多信息!任何與此有關的幫助都將是驚人的,因爲我花了一天的大部分時間試圖解決這個問題。
謝謝!
感謝您的答覆!但是,它仍然給我的問題。運行時出現以下錯誤: 引起:org.openqa.selenium.InvalidSelectorException:給定選擇器//按鈕[@ name ='submit'] [@ type ='submit'] [containts(text( ),'Go')]無效或不會導致WebElement。發生以下錯誤: InvalidSelectorError:找不到xpath表達式的元素//按鈕[@ name ='submit'] [@ type ='submit'] [containts(text(),'Go')]因爲以下錯誤: SyntaxError:該表達式不是一個合法的表達式。 – automationk
我很抱歉'contains()'中存在拼寫錯誤。更正後,請再試一次 – Saifur
非常感謝!那很完美。 – automationk