我正在尝试设置 Selenium Grid 2(Ubuntu 主机用于集线器和 Perl 安装,Windows 主机用于各种浏览器(Firefox、IE、Chrome、Opera))。一切正常,我可以开始对 IE、FF、Opera 进行简短的示例测试,看看浏览器是如何打开的,页面是如何加载的。这是测试:
#!/usr/bin/perl
use Selenium::Remote::Driver;
use Test::More tests=>4;
my $driver = Selenium::Remote::Driver -> new(
'browser_name' => 'internet explorer'
);
$driver->get("http://www.google.com");
$driver->quit();
但我无法让 Chrome 正常工作。我在Windows 主机上使用自定义驱动程序选项启动了 Selenium-server (这是正确的吗?)
java -jar selenium-server-standalone-2.22.0.jar -role node -hub http://my-ubuntu-host:4444/grid/register -browser "browserName=chrome,version=19" -Dwebdriver.chrome.driver="c:\selenium-2-22-0\chromedriver.exe"
当我尝试在Ubuntu 主机上运行测试时'browser_name' => 'chrome'
,它只报告简短的错误消息:
caligula@my-ubuntu-host:~/www$ ./test.pl
1..4
Could not create new session at ./test.pl line 5.
# Looks like your test exited with 255 before it could output anything.
有人可以帮助我吗?有很多示例,但它们都是用 Java 编写的,我无法将它们中的任何一个用于 Perl 代码。
我还注意到 chrome 驱动程序存档被命名为chromedriver_win_20.0.1133.0.zip。它与selenium server 2.22兼容吗?我曾尝试使用 selenium server 2.20,但没有任何效果:FF 和 IE 都没有。