Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

WWW Selenium popup windows

by mmittiga17 (Scribe)
on May 19, 2012 at 14:09 UTC ( #971418=perlquestion: print w/ replies, xml ) Need Help??
mmittiga17 has asked for the wisdom of the Perl Monks concerning the following question:

Good morning All, I have been searching and searching for a way to access a popup window using Perl's WWW::Selenium module. After I click a link the popup opens and select values and then click submit. I am trying to automate this with selenium but I am not having my luck. After my code launches the popup my script dies after trying to access popup. I have tried to use the ide and then play back but it does not get the popup either. Can someone point me in the right direction. I have read the docs on cpan and have searched this site as well. Thanks in advance.

Code snipet for the popup.
$sel->open("javascript:openMdlWindow('ActivityDetail_Options.aspx', '7 +00', '600')"); $sel->set_timeout($timeout); print $sel->get_all_window_ids(),"\n"; $sel->select_pop_up("Activity Detail Report Options"); $sel->set_timeout($timeout); $sel->type("TempBeginDay", "16"); $sel->type("BeginDay", "16"); $sel->type("TempEndDay", "16"); $sel->type("EndDay", "16"); $sel->click("btnSubmit"); $sel->set_timeout($timeout);

Comment on WWW Selenium popup windows
Download Code
Replies are listed 'Best First'.
Re: WWW Selenium popup windows
by Anonymous Monk on May 19, 2012 at 17:10 UTC

      Thanks I found the solution on the link you provided.

      # Assumes only 1 currently opened window with target _blank sub select_target_blank_window { my ($self, $timeout) = @_; my $window_name; for (1 .. $timeout / 100) { ($window_name) = grep {/selenium_blank\d+/} $self->get_all_wind +ow_names; last if defined $window_name; $self->pause(100); } croak "Timed out waiting to select blank target window" if ! defin +ed $window_name; return $self->select_window($window_name); }

      Now to figure out how to get a value in a form. It is a drop down list consisting dates. sel->type("xxx",15"); does not work. nor does

      <code> $sel->get_eval('document.actForm.TempBeginDay.value = "15"'); $sel->get_eval('document.actForm.TempEndDay.value = "15"'); <\code> Thoughts??? Thanks!!!!


        Use the selenium GUI to record clicks etc

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://971418]
Approved by Eliya
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (5)
As of 2015-08-29 16:26 GMT
Find Nodes?
    Voting Booth?

    The oldest computer book still on my shelves (or on my digital media) is ...

    Results (343 votes), past polls