对于Perl,是否有相当于Java的Robot类(java.awt.Robot)?

时间:2008-09-17 04:20:06

标签: java perl automated-tests awtrobot

Perl是否有与Java的Robot类(java.awt.Robot)等价的东西?

5 个答案:

答案 0 :(得分:6)

或者,您可以使用WWW::Mechanize模块来创建代理,就像我们在这里工作一样。我们有一个名为AppMon的工具,它实际上只是围绕Mechanize的一个戏剧化的包装器。

Mechanize模块允许您使用看起来很像这样的脚本:

use WWW::Mechanize;

my $Agent = WWW::Mechanize->new(cookie_jar => {});

$Agent->get("http://www.google.com/search?q=stack+overflow+mechanize");
print "Found Mechanize" $Agent->content =~ /WWW::Mechanize/;

将导致输出“Found Mechanize”。这是一个非常简单的脚本,但请放心,您可以很好地与表单进行交互。

您也可以转移到Ruby并使用Watir或Selenium作为另一种选择,尽管不是那么有趣(在编码方面)或自动化。 Selenium有一个firefox扩展,对于创建selenium脚本非常有用,可以在它支持的各种语言之间进行更改,这在自动化方面非常广泛。

更新 - 2016年11月

虽然我没有太多机会玩它,但是大多数语言都有webdriver包,Perl也不例外。

Selenium::Remote::Driver

答案 1 :(得分:4)

如果您正在寻找一种控制浏览器以进行功能测试的方法,Selenium有Perl绑定:http://selenium.openqa.org/

答案 2 :(得分:3)

对于X(Linux / Unix),有X11::GUITest

对于Windows,有Win32::CtrlGUI,虽然安装其先决条件可能有点棘手。

答案 3 :(得分:2)

在Windows上,我一直使用Win32::GuiTest

答案 4 :(得分:1)

Linux / Unix上有:

http://sourceforge.net/projects/x11guitest

对于使用Perl的Windows或Mac,我并不熟悉。