6

在我的 selenium c# windows forms 应用程序中,我有一个上传 doc/docx 文件的场景。我已经在另一种情况下完成了上传。因为它在我上传的浏览按钮前面有一些文本框

IWebElement element = driver.FindElement(By.Id("uploadhere"));
element.SendKeys("C:\\Some_Folder\\MyFile.txt");

但是现在在我目前的情况下,我无法使用此代码。我下面的图片显示了上传文件对话框。我用谷歌搜索了很多,但找不到适合我需要的...我可以点击浏览按钮,但无法选择文件。Firebug 和 selenium IDE 似乎没有用..

谁可以帮我这个事?任何评论将不胜感激..在此处输入图像描述

4

2 回答 2

0

由于它是一个操作系统对话框,您无法使用 selenium 处理它,您可以使用 java script executor 检查此链接 Webdriver: File Upload

于 2013-09-18T10:52:14.677 回答
-2

我们不能通过 Selenium 处理 windows fileOpenDialog。我们必须使用任何一个 Javascript 执行器,但有时仍然无法使用 Javascript 执行器。它不会执行。它给出空值错误。例子 :

如果您通过以下链接访问 naukri.com http://my.naukri.com/manager/createacc2.php?othersrcp=11499&wExp=N

<input type="file" id="browsecv" name="browsecv"></input>

上传文件。

您的 javascript 和 selenium 不会识别浏览元素。

然后我们必须使用Point Position等第三方工具来计算“ browsefile ”按钮的x和Y坐标,然后我们可以使用C#.Net低级MouseClick句柄来点击它,或者我们可以使用AutoIt工具来处理wondows pop。要了解更多信息,您可以访问

http://avinashpandeblogsonseleniumautomation.blogspot.in/2015/06/upload-file-using-selenium-web-driver.html 您将通过示例获得解决方案。

于 2015-06-07T10:56:46.407 回答