2012-01-25 45 views
1

好的......我放棄:) 什麼是使用 WebDriver從GWT Suggest Box中選擇數值的最佳方法?我使用的是FirefoxDriver,至今沒有看到 值出GWT的提示框...不sendKeys,沒有selenium.keyUp, 什麼。 我甚至嘗試直接執行javascript來獲取這些值來填充,像這樣(無效):WebDriver和GWT Suggest Boxes

((JavascriptExecutor)driver).executeScript(「document.getElementById('spSelect')。value =' Verizon的「);

有沒有更好的 的方法?如果不是,那麼從GWT中獲取數值的「最佳」方法是什麼暗示 Box? 非常感謝提前。 乾杯 佩德羅

回答

1

好了,我們已經找到了我們問題。 我們在我們的元素上設置了明確的ID,所以我們的測試可以更容易地抓住 。

usernameLabel.getElement().setId("consoleLoginPageUserNameInput"); 

這對於大多數GWT投入正常工作,但對於SuggestBox是 處理方式稍有不同:

spSelect.getElement().getElementsByTagName("input").getItem(0).setId("spSelect"); 

抓住正確的內表後,我們在GWT這是通過做能夠與 這個輸入與Selenium交互就好了。希望這可以幫助某人。 Cheers Pedro

0

嘗試這個JavaScript(from here):

要設置值:

document.getElementById("spSelect")["value"] = "verizon" 

找回它:

var value = document.getElementById("spSelect")["value"]; 
+0

謝謝您的回覆...但是沒有運氣。我知道你可以直接使用javascript來設置輸入的值,但看起來GWT SuggestBox本身不是輸入。 – user921104

+0

您必須擁有GWT SuggestBox的不同版本或分支 - 它適用於我嘗試過的每一個版本。無論哪種方式,我感到你的痛苦,這些自定義UI控件是一個自動化的痛苦。 – Anders