2

在 Windows 或 Linux 平台上,是否有一个 GUI 自动化工具可以打开一个浏览器页面(任何浏览器,我不在乎)然后单击特定图标图像的每个实例,无论它在页面上的任何位置不管它存在多少次。

我似乎记得 IBM 的 Rational Robot 中的这种能力。对于身无分文的人是否有开源替代品(哦,是的......以及道德上优越的人:-))

编辑:

我希望能够单击页面上的特定位图或像素矩形,即使它位于较大的图像中或出现在 Flash 窗口中。图像存在于页面上的任何位置,以及容器或图像具有的任何名称,单击它。

4

6 回答 6

3

请查看sikuli.org

另请参阅:关于 SO 的sikuli相关问题

它使用基于图像的屏幕截图识别,并具有一个集成的脚本编辑器,允许您直接插入与脚本内联的目标按钮图像。

它可以在 Windows 和 Mac OS 上运行,并且可以与任何应用程序(包括浏览器)一起使用。

脚本语言是 Jython。

该库是具有 MIT 许可证的开源库。实际上,它是在麻省理工学院开发的。

于 2011-06-30T06:55:56.223 回答
1

你看过Watir吗?它是一个用 Ruby 编写的基于浏览器的 Web 应用程序自动化框架。

于 2010-11-06T00:30:14.607 回答
1

如果您知道图像 url,请使用这个 selenium 选择器:

"dom:var elist=document.getElementsByTagName('img');var toret = null;
for (var i=0; i<elist.length; i++) { if (elist[i].src=='something.png') {
toret = elist[i]; } }; toret"

http://seleniumhq.org/docs/04_selenese_commands.html#locating-by-dom

于 2010-11-06T12:00:01.510 回答
1

AutoIt是另一个伟大的自动化工具。您可以检查 IE 的用户定义函数 (UDF),它是默认包的一部分。

它提供了很多自动化的IE管理、Windows系统级管理、声音管理等,

您可以从下载免安装包http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-sfx.exe开始,并查看 UDFs3 中的 IE 管理 UDF 示例。 chm 帮助文件。

于 2010-11-06T12:22:23.643 回答
0

如果您的图像可以通过 CSS id 在页面上识别,您应该能够使用cucumber/webrat和/或 cucumber/selenium 来完成此操作(如果您还想在页面中测试 javascript,则后者)。不是 GUI 工具,但非常强大。

于 2010-11-06T00:31:17.170 回答
0

答案是否定的:没有开源工具可以做到这一点。那是因为这是一个坏主意。像 Rational 这样的商业工具试图做到这一点,因为它们试图成为所有人的一切(即使它们工作得不是很好)。但是通过位图图像选择很容易想到并且很难可靠地执行,因此现代流行的工具甚至都没有尝试过。相反,他们专注于如何成功。

正如其他人已经说过的那样,正确的做法是通过 CSS 选择器或图像文件名选择图像。这可以通过任何现代 GUI 测试工具可靠地完成:Watir、Selenium、Webrat ...

于 2010-11-10T22:57:26.093 回答