我在堆栈上看到了一些与此主题相关的问题,而其他问题似乎总是包含RC / WD解决方案。这适用于SELENIUM IDE,而不是WD / RC实现。
我意识到我们只需要设置存储文件路径的元素的值,但我看到了相互冲突的方式。
我存储文件路径字符串的元素在检查器下如下所示:
输入类型="文件"命名=" StdConditionsFile" ID =" pdfApp"
如果我得到元素的Xpath,它看起来像这样:
// * [@ id中=" pdfApp"]
我使用以下代码分配file.path:
但我没有运气。我尝试使用元素的名称,xpath和id,但从未分配file.path。
更新: 我发现了一些进展,但如果我能真正做到这一点可能会产生误导。而不是使用'类型'作为命令,我寻找另一个替代品并找到' setElementAttribute'。如果我将该命令与upload.element的Id,name或XPath一起使用,我可以看到我实际上正在设置该值,但是有一个问题。
运行这3个命令后,我在检查器中看到了这个:
输入名称=" StdConditionsFile" ID =" pdfApp"值=" C:\ \文件\ filename.pdf&#34的完整\路径\;风格=""类型="文件"
在运行命令之前它是这样的
输入名称=" StdConditionsFile" ID =" pdfApp"风格=""类型="文件"
但是当您查看DOM属性时,名为' value'的属性是""或null。
任何人都有这方面的成功吗?
答案 0 :(得分:0)
我可以使用AutoIt来做到这一点。我在AutoIt中创建了一个脚本,我必须在Selenium IDE中启动tests / testsuite之前启动它。在查找“文件上载”窗口时,AutoIt脚本将循环。确切的步骤是:
测试/故障排除: 我在Selenium WD和Selenium IDE中使用了完全相同的命令,我使用“Sendkeys”在文件路径中输入到站点上传控件中。 Selenium IDE会说该命令是成功的,但你从未看过网站更新并显示像WD一样的路径。因此,当您单击上载按钮时,不会上载任何文件。我在多机器上尝试了这个并使用“Type”。这也没有用,Selenium IDE中的命令显示为通过。我也使用在IDE中传递但不起作用的setElementAttribute。其他用户说这项工作,但我还没有看到它和AutoIt肯定有效。