in reply to Re^6: Using WWW::Selenium To Test Or Automate An Ajax Website
in thread Using WWW::Selenium To Test Or Automate An Ajax Website
Hi,
Q: Are you using Selenium IDE FireFox plug-in to record?
A: Yes. I have it record what I want to do, then I use the export function to put the Selenium commands into perl, then copy and paste into a text editor and remove the "_ok"s and place "sel->start();" in the code.
RE: Test::WWW::Selenium - Thanks I changed that, but my code doesn't seem to run how I want it to.
RE: Real website and login - The real website and my login is real in the code below.
RE: Else, elsif, \@ - Thanks, I changed that too but my code doesn't seem to run how I want it to.
Desired outcome:
Progress: I've only gotten as far as no. 2 in the Selenium IDE, and I can only get to no. 1 using the Selenium RC and Perl.
I'm pretty confident I can write a file handle and read it into an array and for each of the codes get Selenium to input them into the CokeZone website, however it's no use if I can't even automate a login that handles the popups!
Code I've written to try to login and handle the popups:
#! /usr/bin/perl use strict; use warnings; use WWW::Selenium; my $sel = WWW::Selenium->new( host => "localhost", port => 4444, browser => "*chrome", browser_url => "http://www.cokezon +e.co.uk" ); $sel->start(); $sel->open("/home/index.jsp"); $sel->click("link=Log in"); $sel->wait_for_page_to_load("30000"); if ( $sel->is_text_present("Thanks for visiting!\n\nNow here's your ch +ance to tell us what you think. This quick and easy survey will only +take you a few minutes to fill out, and it'll help us to get more of +the stuff you want to see into 'Coke Zone'.\n\nThanks for your help,\ +nThe 'Coke Zone' Team") == 1 ) { $sel->select_window("entry"); $sel->close(); $sel->select_window("null"); } if ( $sel->is_text_present("At the end of your visit on this website p +lease take the time to complete an on-line survey, which will provide + us with feedback on the website. Please do not close this window.\n\ +nEnjoy your visit") == 1 ) { $sel->select_window("stealth"); $sel->close(); $sel->select_window("null"); } $sel->click("emailAddress"); $sel->type("emailAddress", "bogus\@fake.com"); $sel->type("password", "password"); $sel->click("remember"); $sel->click("subButton"); $sel->wait_for_page_to_load("30000"); my $points = $sel->get_text("//div[\@id='header_links']/div[1]/div[1]/ +h3"); print $points $sel->click("link=Log out"); exit 0;
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^8: Using WWW::Selenium To Test Or Automate An Ajax Website
by Limbic~Region (Chancellor) on Nov 28, 2009 at 14:55 UTC |