我正在尝试使用Selenium IDE来点击html页面中的swf。 DIV id和嵌入ID更改取决于时间戳,例如id="FLASH_0_23458974594"
,我尝试过使用id=/^FLASH_([0-9]+_)[0-9]([0-9]+)/
或id="FLASH_glob:*"
,但IDE没有使用swf。我在这里做错了吗?
感谢。
答案 0 :(得分:3)
你试过包含吗?
click | //object[contains(@id,'FLASH_')]
答案 1 :(得分:2)
单击Flash对象将无法使用。使用Selenium自动化Flash的唯一已知方法是通过JavaScript公开Flash对象中的UI函数。然后,您可以使用Selenium RC中的getEval()函数调用该JavaScript。
答案 2 :(得分:1)
这个话题已经很老了,但是我花了很多次才找到解决方案,我回答了这个问题。 正如@Zugwalt所说,您可以使用Java Robot类。但是,如果您使用Selenium Grid和RemoteWebDriver,您可以使用jsch打开与远程计算机的ssh连接,并致电xdotool以点击给定位置。
您可以在此Gist
上查看示例答案 3 :(得分:0)
我们将Java客户端用于selenium,有时让我们的测试使用Java Robot来移动鼠标并在我们无法直接与Web浏览器交互时单击。这有缺点(例如浏览器必须位于前台,准确性可能有点棘手)但是当在虚拟机中运行测试时,这些缺点会被最小化。