2014-03-03 47 views
0

我使用ruby/cucumber/watir-webdriver和頁面對象gem來運行我的測試。我的測試通常在Firefox中運行,但決定嘗試Chrome。雖然點擊在Firefox中的作品,它不會在鉻。下面是HTML代碼示例:表單未在Chrome中使用watir-webdriver進行點擊提交

<form id='test-form' method='post' class='validate-inline'> 
... 
    <div class='margin-top'> 
    <input class='btn' data-disable-with='wait...' type='submit' value='Submit Form'></input> 
    </div> 
</form 

在我的班級網頁我已經宣佈了按鈕,如下:

button(:submit_form_btn, :value => 'Submit Form') 

,並調用它是這樣的:

submit_form_btn_element.when_present.click 

我看按鈕文本更改爲「等待......」幾秒鐘,然後返回到「提交表單」,但似乎沒有提交表單。如前所述,它可以與firefox一起使用,並且可以手動點擊。在Chrome中似乎只是一個問題。任何想法如何解決它? 我嘗試點擊div,並嘗試單擊按鈕兩次,但同樣的問題。

一如既往的讚賞您的幫助。謝謝。

+0

您是否嘗試過定義Form元素,然後調用#submit? http://rubydoc.info/gems/watir-webdriver/Watir/Form:submit 這不是最好的解決方案(因此不是「答案」),但也許它會滿足您的目的。 –

回答

0

我知道這個問題現在有點老了,但我想我會發布,以防萬一這有助於任何人。

大部分時間我遇到過類似的問題,這是由於Chrome的更新引起的,它導致了watir-webdriver gem(或其中一個依賴項)版本的問題,或者與chromedriver版本我正在使用。在過去,我通過更新我的寶石和鍍鉻汽車,並在其他時候不得不將瀏覽器版本回滾到以前的版本,從而取得了成功。

在老版本的chrome上測試並不理想,但在問題得到解決之前它可以很好地用作停止間隙。

如果您確實需要使用先前版本的chrome方法,請務必記錄一個錯誤標籤,如果這裏沒有標籤。