Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 是否有开源浏览器GUI自动化工具支持在页面上的任何位置单击特定图标?_Windows_Linux_Selenium_Watir_Ui Automation - Fatal编程技术网

Windows 是否有开源浏览器GUI自动化工具支持在页面上的任何位置单击特定图标?

Windows 是否有开源浏览器GUI自动化工具支持在页面上的任何位置单击特定图标?,windows,linux,selenium,watir,ui-automation,Windows,Linux,Selenium,Watir,Ui Automation,在Windows或Linux平台上,是否有GUI自动化工具可以打开浏览器页面(任何浏览器,我都不在乎),然后单击特定图标图像的每个实例,无论该图标图像在页面上的位置以及存在多少次 我似乎还记得IBM的Rational Robot中的这种能力。对于身无分文的人(哦,耶……还有道德高尚的人:-)有开源的替代方案吗 编辑: 我希望能够单击特定的位图或像素矩形,无论它在页面上的什么位置,即使它在较大的图像中或显示在flash窗口中。页面上任何位置都有图像,无论容器或图像的名称是什么,请单击它。您看过了吗

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

我似乎还记得IBM的Rational Robot中的这种能力。对于身无分文的人(哦,耶……还有道德高尚的人:-)有开源的替代方案吗

编辑:


我希望能够单击特定的位图或像素矩形,无论它在页面上的什么位置,即使它在较大的图像中或显示在flash窗口中。页面上任何位置都有图像,无论容器或图像的名称是什么,请单击它。

您看过了吗?这是一个用Ruby编写的基于浏览器的web应用程序自动化框架。

如果您的图像在页面上可以通过CSS id识别,那么您应该能够使用和/或cucumber/selenium(如果您还想在页面中测试javascript,则使用后者)来实现这一点。不是GUI工具,但功能非常强大

如果您知道图像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"
“dom:var-elist=document.getElementsByTagName('img');var-toret=null;
for(var i=0;i是另一个伟大的自动化工具。您可以检查IE的用户定义函数(UDF),它是默认包的一部分

它提供了大量的自动化IE管理、Windows系统级管理、声音管理等


您可以从下载no install软件包开始,并在UDFs3.chm帮助文件中查看IE管理UDF的示例。

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

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

请查看

另见:等等

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

它运行在Windows和Mac操作系统上,可以与任何应用程序(包括浏览器)一起使用

脚本语言是Jython


该库是MIT许可证的开源库。实际上,它是在MIT开发的。

我知道Watir和Selenium。我只是不知道两者是否都会找到带有特定图形的网页部分。您希望如何指定图形?您是否可以控制您要针对的网页?我无法控制图形。不过,我可以给它一个位图来查找。你能澄清一下“特定图标图像”-特定URL或仅指内容(图像本身),但图像名称和URL可能不同吗?请提供示例HTML。我不明白你想做什么。我想和用户一样与页面交互。我想找到一个特定的位图(可能是通过在整个浏览器gui显示中爬行)然后点击它。我希望代码与技术无关。它可以是一个flash页面,也可以是html。只要找到一系列像素,然后点击它们。我意识到这与操纵一些底层html结构相比是没有效率的。这可能是自cue-cat以来最愚蠢的事情,但我想知道这是否可行。所以,y你需要遍历某个页面上的所有图像,获取其来源,并使用某个图像识别库确定此图像是否为“必需”图像,然后单击它。除了“图像识别”“部分所有的事情都可以用Selenium来完成。但是很可能有一些库可以完成这一部分,所以这很可能是可能的。我想知道为什么这得到了一个赞成票和一个反对票。