Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Using the Selenium server instead of the Selelium IDE
- Loading branch information
Showing
3 changed files
with
107 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,49 @@ | ||
danny_mk, yeah. the best thing you could do is make a branch for the selenium work that doesn't have any other commits in it for other stuff | ||
scrottie git branch selenium; git checkout selenium | ||
scrottie git cherry-pick b8596fd10da910254150db02dc7336bda5a25c89 # to bring over the one commit that you did | ||
scrottie then to push that: git push origin selenium | ||
|
||
|
||
Install WebGUI using to the instructions at: https://github.com/plainblack/webgui/tree/WebGUI8 | ||
|
||
Create the following settings in your test site webgui.conf file: | ||
|
||
"selenium" : { | ||
"server" : "localhost", | ||
"port" : "4444", | ||
"browser" : "firefox", | ||
"webgui_url" : "http://your_webgui_test_site_url" | ||
}, | ||
|
||
Make sure you select all the defaults (do not change the "admin" user password) | ||
|
||
Pick the site design: "Style 03" (This is the style selected for testing) | ||
|
||
Download the Selenium server from: http://seleniumhq.org/download/) | ||
as of this writing it was selenium-server-standalone-2.24.1.jar | ||
|
||
Running the Selenium Server (run in a separate command line/window) | ||
java -jar selenium-server-standalone-2.24.1.jar | ||
|
||
The -browserSessionReuse is to keep the selenium session open so you may troubleshoot page issues | ||
The Selenium software automatically closes the browser when the tests are concluded. If you are writing/troubleshooting tests | ||
and need the browser to remain open use: | ||
java -jar selenium-server-standalone-2.24.1.jar -browserSessionReuse | ||
|
||
GOTCHAS --- | ||
If running the selenium tests in the IDE make sure to change: | ||
<link rel="selenium.base" href="http://webgui.dbash.com" /> TO: <link rel="selenium.base" href="http://your_webgui_test_site_url" /> | ||
|
||
Selenium server not running (this may vary according to the values in your webgui.conf file): | ||
Error requesting http://localhost:4444/selenium-server/driver/: | ||
500 Can't connect to localhost:4444 (Connection refused) | ||
|
||
Optional: | ||
|
||
Download and install the Selenium IDE from: http://seleniumhq.org/projects/ide/ | ||
|
||
Take a look at the Selenium IDE documentation: http://seleniumhq.org/docs/02_selenium_ide.html | ||
|
||
Youtube videos can be quite handy: | ||
http://www.youtube.com/watch?v=i4NTGUm6oeQ | ||
http://www.youtube.com/results?search_query=selenium+tutorial+for+beginner | ||
|
||
Use the Selenium IDE to open the test suites: | ||
adminSuite.html | ||
frameless/suite.html | ||
|
||
GOTCHAS --- | ||
Change: <link rel="selenium.base" href="http://webgui.dbash.com" /> TO: <link rel="selenium.base" href="http://your_test_website" /> | ||
http://www.youtube.com/results?search_query=selenium+tutorial+for+beginner |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
#!/usr/bin/perl | ||
use Test::More tests => 98; | ||
use Test::WWW::Selenium; | ||
use Test::WWW::Selenium::HTML; | ||
use WebGUI::Paths -inc; | ||
use WebGUI::Config; | ||
use strict; | ||
|
||
WebGUI::Paths->siteConfigs or die "no configuration files found"; | ||
|
||
my $config = undef; | ||
my $webguiSiteUrl = undef; | ||
my $browser = undef; | ||
my $seleniumServer = undef; | ||
my $seleniumServerPort = undef; | ||
if ( my $config_file = $ENV{WEBGUI_CONFIG} ){ | ||
my $webguiTestConfigFilename = WebGUI::Paths->configBase . '/' . $config_file; | ||
$config = WebGUI::Config->new( $webguiTestConfigFilename ) or die "failed to load configuration file: $webguiTestConfigFilename: $!"; | ||
|
||
eval{ | ||
$webguiSiteUrl = $config->{config}->{selenium}->{webgui_url}; | ||
$browser = $config->{config}->{selenium}->{browser}; # firefox, iexplore, safari | ||
$seleniumServer = $config->{config}->{selenium}->{server}; | ||
$seleniumServerPort = $config->{config}->{selenium}->{port}; | ||
|
||
} || die "Can't get Selenium configuration values from configuration file: $webguiTestConfigFilename\n"; | ||
|
||
}else{ | ||
die "Please read the instructions, you must specify a PERL5LIB and WEBGUI_CONFIG file value!\n"; | ||
|
||
} | ||
|
||
# | ||
my $sel = Test::WWW::Selenium->new( | ||
host => $seleniumServer, | ||
port => $seleniumServerPort, | ||
browser => "*$browser", | ||
browser_url => $webguiSiteUrl ); | ||
|
||
my $selh = Test::WWW::Selenium::HTML->new( $sel ); | ||
|
||
$selh->diag_body_text_on_failure(0); | ||
|
||
#------------------------- Run All Tests here ----------------------- | ||
|
||
ok(1, "Login test"); | ||
$selh->run(path => "login.html"); | ||
ok(1, "Turn On Admin test"); | ||
$selh->run(path => "turnOnAdmin.html"); | ||
ok(1, "Admin Console tests"); | ||
$selh->run(path => "turnOnAdmin.html"); | ||
ok(1, "Version Tags tests"); | ||
$selh->run(path => "versionTags.html"); | ||
ok(1, "Clipboard test"); | ||
$selh->run(path => "clipboard.html"); | ||
ok(1, "Asset Helpers tests"); | ||
$selh->run(path => "assetHelpers.html"); | ||
ok(1, "New Content->Basic tests"); | ||
$selh->run(path => "newContentBasic.html"); | ||
ok(1, "New Content->Community tests"); | ||
$selh->run(path => "newContentCommunity.html"); | ||
ok(1, "New Content->Intranet tests"); | ||
$selh->run(path => "newContentIntranet.html"); | ||
ok(1, "New Content->Prototypes tests"); | ||
$selh->run(path => "newContentPrototypes.html"); | ||
ok(1, "New Content->Shop tests"); | ||
$selh->run(path => "newContentShop.html"); | ||
ok(1, "New Content->Utilities tests"); | ||
$selh->run(path => "newContentUtilities.html"); |