我使用我的 WebDriver 和 FireFox。
我有一个元素://input[@class="uploadFiles"],当我点击它时:driver.findElement(By.xpath("//input[@class="uploadFiles"]")),一个窗口的上传文件(Windows 操作系统的窗口)打开,但测试没有继续到下一行,并且卡住了。
有什么帮助吗?
我使用我的 WebDriver 和 FireFox。
我有一个元素://input[@class="uploadFiles"],当我点击它时:driver.findElement(By.xpath("//input[@class="uploadFiles"]")),一个窗口的上传文件(Windows 操作系统的窗口)打开,但测试没有继续到下一行,并且卡住了。
有什么帮助吗?
Webdriver 不与操作系统级别的对话框交互,这就是它不继续下一行的原因。这里有一些可以帮助你的东西:http://code.google.com/p/selenium/wiki/FrequentlyAskedQuestions#Q: _Does_WebDriver_support_file_uploads?
不,您不能将 WebDriver 用作 niharika_neo 答案,但您可以下一步:
string filepath = "my local path";
_driver.FindElement(By.Id("attachments")).SendKeys(filepath);
_driver.FindElement(By.Id("attachments")).SendKeys(Keys.Return);
您不能直接与操作系统级别的 Windows 交互。您可以通过 niharika_neo 给出的路径,或者您可以使用 Auto IT 工具来处理操作系统级别的窗口。最好的选择是使用 Auto IT 工具。
我在使用 FF 时遇到了同样的问题,然后我发现它是特定于我正在使用的 FF 版本的。我在 FF 11 上安装并运行了测试,我能够成功地运行他的测试。尝试更改您正在使用的 FF 版本。