2015-08-09 237 views
1

我创建的应用程序运行硒Internet Explorer的Web驱动程序。 程序在我的电脑上正常工作,但是当我在其他电脑上使用相同的驱动程序尝试它时,它在第一个元素上抛出异常,说它找不到它。硒没有找到现有的元素

  • 在这个html中没有帧。

我检查的第一件事是HTML pagesource差异:

在我的电脑:

<input name="cId" tabindex="1" id="CNum" type="text" size="13" maxlength="10" value="" autocomplete="off"> 

其他PC:

<INPUT tabIndex=2 id=CNum maxLength=10 size=13 name=cId autocomplete="off"> 

我的硒代码:

driver.FindElement(By.Id("CNum")).SendKeys("123"); 

它可能是什么(其他计算机中的html源码没有类型,并且在很多情况下没有引号。)

谢谢。

+0

我的经验,IE是最麻烦的,一些浏览器使用Selenium玩,很可能你使用的是IE浏览器版本不支持硒;我之前有过这方面的经验,我不得不做的是将IE降级到较旧的版本并禁用Windows更新。我建议你使用Firefox或Chrome,它们比IE更稳定。 –

+0

是的,他们特别是Firefox,但有网站只适用于IE浏览器,这就是问题出现的地方。 –

回答

0

尝试

driver.FindElement(By.name("cId")).SendKeys("123"); or 
driver.findelement(by.cssselector("input[name='cId']")).sendkeys("123"); 
+0

我尝试通过名称,XPath CssSelector,但仍然相同的问题,其他电脑的HTML没有类型=“文本”或IE设置? (在我的电脑上一切正常) –

+0

和一个更多的东西与Firefox的驱动程序一切都很好,在两个电脑。 –

+0

雅可能是IE版本不支持硒jar文件,IE有很多问题,最好暂时用firefox和chrome。 –