2011-05-16 59 views
2

的“selectFiles”函数调用,我更多的是服务器端和JavaScript程序员。我从来没有用Flash做过很多。解决方法,以Flash对象

我有一个强大的基于Flash的swfuploader的html表单,我需要用Selenium 2/WebDriver来测试它。

的问题是,

movieContent.CallFunction('<invoke name="selectFiles" returntype="javascript">' + __flash__argumentsToXML(argumentArray, 0) + '</invoke>'); 

没有在Flash支持的10 ...

那么,我们应该怎么办?如果有可能我可以js.executeScript(script);

但是现在我必须在我的java junit/selenium测试中做某种movieContent.click(),但它不会触发选择文件窗口,它什么也不做。

它可以将鼠标移动到指定的坐标,然后点击使用MoveToOffsetAction,但我没能做到与FirefoxDriver既不chromeDriver 2.0b3 ...

回答

0

这是一项安全功能阻止网站访问本地客户端文件系统。文件系统只能在堆栈跟踪中与用户交互访问。 IE:点击鼠标。
以对鼠标的控制也将是一个安全冲突。
您最好的选择是从你的onclick事件闪光灯功能启动硒。
该功能首先允许您选择要上传的“测试”文件,然后让功能触发硒测试。

+1

正如我所说,我从来没有使用闪光灯,我不会去。我使用java Webdriver驱动程序又名selenium 2.我只能从我的java junit测试中启动测试。仅供参考,您可以用硒2来控制您的鼠标,硒在模拟用户操作时如何成为安全违规?那么一切都会违反安全规定,不是吗? – lisak 2011-05-17 06:59:43

+0

我指的安全侵犯是闪光灯不是硒。 Flash无法控制鼠标。自从我使用硒之后已有几年了,我不知道它可以模仿老鼠的行为。 – 2011-05-17 16:09:59

相关问题