簡體   English   中英

Selenium 2 C# Webdriver - 為什么我不能在 IE8 中從一個輸入移動到另一個輸入?

[英]Selenium 2 C# Webdriver - Why can't I move from one input to another in IE8?

我在使用 WebDriver 和 IE8 時遇到了一個奇怪的問題,我很好奇其他人之前是否見過這個問題。 簡而言之,我有一個測試,它遍歷一組輸入字段,輸入文本,然后單擊提交按鈕(其中沒有一個在<form>中。)它在 Firefox 3.6 中運行良好,如下所示:

Driver.FindElement(By.XPath(domainXpath)).SendKeys("someDomain");
Driver.FindElement(By.XPath(emailXpath)).SendKeys("someEmailAddress");
Driver.FindElement(By.XPath(passwordXpath)).Sendkeys("somePassword");


但是當我對 IE8 運行此程序時,Selenium 似乎永遠不會更改字段,即使它似乎通過指定的 XPath 正確定位它們。

起初,我認為這可能是 xpath-ing 的問題(我見過其他有相關問題的人),但我的 SendKeys 沒有因任何“找不到元素”錯誤而失敗,我點擊的其他元素是工作正常。 事實上,Selenium 能夠找到該列表中的第一個字段,並將所有三個 Finds 的所有文本轉儲到該字段中。

所以,然后我稍微更改了代碼,如下所示:

Driver.FindElement(By.XPath(domainXpath)).SendKeys("someDomain\t");
Driver.FindElement(By.XPath(emailXpath)).SendKeys("someEmailAddress\t");
Driver.FindElement(By.XPath(passwordXpath)).Sendkeys("somePassword\t");


...而且,瞧,文本輸入正確。

就好像 IE 忽略了 Selenium 移動到下一個字段的請求,盡管該字段報告存在。

有誰之前經歷過這個嗎? 有什么方法可以避免為 IE 編寫特殊代碼,只針對每個數據項的 append 選項卡?

謝謝,格雷格。

實際上,這個問題似乎是 IE8 和被測應用程序之間的兼容性問題(或編碼錯誤)。 我仍在整理它,很快就會有更多細節,但現在,這個問題似乎得到了回答。

抱歉弄亂了 stream... [尷尬]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM