http://www.perlmonks.org?node_id=750817


in reply to Using WWW::Selenium To Test Or Automate An Ajax Website

I just want to mention that (possibly due to having later version(s) of some component(s)) I did get WWW::Selenium working using just "*firefox" as the browser setting. I did create a custom firefox profile in c:/selenium/firefox (which is still necessary due to one of the server startup options below), and at first used "*custom firefox..." like you had, but every time I started the Selenium server and launched Firefox, I had to create an exception for the SSL certificate (even with -trustAllSSLCertificates, and for some reason, I could not get "*firefox" working at first). Then I went back to using "*firefox", and everything worked! The only slightly annoying thing is that everytime Firefox starts, I get the add-on popup window with the message "3 new add-ons have been installed" ... not sure how to suppress that...have been looking for likely suspects.

UPDATE: Actually, now I don't even need the -firefoxProfileTemplate or the -trustAllSSLCertificates options below, and I don't get the Add-on popup window. Also, I found the command to shutdown the Selenium RC server ('stop' only shuts Firefox down...do_command('shutDown') shuts the server down - and "do_command()" is undocumented AFAICT).

Update: shutDown changed to shutDownSeleniumServer in newer versions of Selenium.

I did add some options to the selenium server startup. Here is what the beginning of my program looks like:

#!/usr/bin/perl use strict; use warnings; use WWW::Selenium; $ENV{PATH}="c:\\progra~1\\mozill~1;$ENV{PATH}"; # The first argument "1" is to make this run in the background # and not block on Windows. You would of course do this # differently on a *nix or other system. system(1, "java", "-jar", "c:/selenium/seleni~1.0-b/seleni~1.0-b/se23ae~1.0-b/seleni~1.jar", "-firefoxProfileTemplate", "c:/selenium/firefox", "-trustAllSSLCertificates", ); my $base = "https://xxxxx.xxxxx"; my $url = "$base/login/login.asp"; my $sel = WWW::Selenium->new( host => 'localhost', port => 4444, browser => "*firefox", # browser => '*custom firefox -no-remote -profile c:/selenium/firefo +x', browser_url => $base, ); $sel->start(); $sel->open($url); #And at the end... $sel->stop(); $sel->do_command('shutDownSeleniumServer');