Perl是否有与Java的Robot类(java.awt.Robot)等价的东西?
答案 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脚本非常有用,可以在它支持的各种语言之间进行更改,这在自动化方面非常广泛。
虽然我没有太多机会玩它,但是大多数语言都有webdriver包,Perl也不例外。
答案 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)