Bug 14495

Summary: WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Product: Koha Reporter: Olli-Antti Kivilahti <olli-antti.kivilahti>
Component: Architecture, internals, and plumbingAssignee: Olli-Antti Kivilahti <olli-antti.kivilahti>
Status: BLOCKED --- QA Contact: Testopia <testopia>
Severity: enhancement    
Priority: P5 - low CC: jonathan.druart
Version: Main   
Hardware: All   
OS: All   
See Also: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=13691
Change sponsored?: --- Patch complexity: Medium patch
Documentation contact: Documentation submission:
Text to go in the release notes:
Version(s) released in:
Bug Depends on: 13995    
Bug Blocks: 14536, 14540    
Attachments: Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.

Description Olli-Antti Kivilahti 2015-07-06 12:20:44 UTC
Because life is short, getting test web drivers should be easy.

In Ubuntu 14.04, Selenium no longer requires a stand-alone testing Server, so running integration tests is much much more fun!

This factory encapsulates all the boring bits about getting a web driver to mimic user behaviour in the GUI.

Tests included.
Comment 1 Olli-Antti Kivilahti 2015-07-06 13:01:26 UTC Comment hidden (obsolete)
Comment 2 Olli-Antti Kivilahti 2015-07-06 13:04:14 UTC Comment hidden (obsolete)
Comment 3 Olli-Antti Kivilahti 2015-07-06 15:26:33 UTC Comment hidden (obsolete)
Comment 4 Olli-Antti Kivilahti 2015-07-07 12:43:39 UTC Comment hidden (obsolete)
Comment 5 Olli-Antti Kivilahti 2015-07-16 12:41:06 UTC Comment hidden (obsolete)
Comment 6 Olli-Antti Kivilahti 2015-07-17 11:08:26 UTC
You need phantomjs version 1.9 or bigger to run browser testing headlessly in a testing server.
Comment 7 Olli-Antti Kivilahti 2015-07-22 11:24:12 UTC Comment hidden (obsolete)
Comment 8 Olli-Antti Kivilahti 2015-07-24 14:02:58 UTC Comment hidden (obsolete)
Comment 9 Olli-Antti Kivilahti 2015-07-31 10:33:52 UTC Comment hidden (obsolete)
Comment 10 Olli-Antti Kivilahti 2015-08-01 13:36:56 UTC Comment hidden (obsolete)
Comment 11 Olli-Antti Kivilahti 2015-08-17 12:00:24 UTC
Created attachment 41533 [details] [review]
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.
Comment 12 Lari Taskula 2017-05-08 10:46:45 UTC
Created attachment 63234 [details] [review]
Bug 14495 - WebDriver/WebTester Factory for easy generation of Web testing UserAgents.

Has an optional dependency to Buugg 13799

Because life is short, getting test web drivers must be easy.

    use t::lib::WebDriverFactory;
    my ($firefox) = t::lib::WebDriverFactory::getUserAgentDrivers('firefox');

In Ubuntu 14.04, Selenium no longer requires a stand-alone testing Server, so
running integration tests is much much more fun!

This factory encapsulates all the boring bits about getting a web driver to mimic
user behaviour in the GUI. And makes it super easy to get a test driver for any
testing type environment.

Adds support for Test::Mojo and Selenium,
see t::lib::WebDriverFactory for installation and usage instructions.

----------------------------
-INSTALLATION INSTRUCTIONS:-
----------------------------
-All the WebDriver tests use the Selenium::PhantomJS-package by default.
You MUST install the following dependencies:
  cpanm Selenium::Remote::Driver
  cpanm Selenium::PhantomJS
  apt-get install phantomjs #Minimum version acceptable is v1.09
Optionally you can install other Selenium browsers like
  Firefox
  Chrome
  IE
But they are only useful when testing the WebDriver scripts on a graphical environment.
You are better off using Selenium IDE to learn/test WebDriver scripts.

run t::lib::webDriverFactory.t to see your configured capabilities.