Upgrade Selenium libraries to their latest version

Description

The current implementation of the SeleniumMonitor relies on a very old version of the Selenium libraries which impose hard limitations.

With the latest Selenium (2.42.2) it is possible to use PhantomJS (to avoid start FireFox or Chrome), and also supports any version of Chrome and FireFox.

It is important to know that the latest Selenium libraries and the SeleniumMonitor require the latest version of the following libraries:

  1. Apache HttpClient (4.3.4)

  2. Apache HttpCore (4.3.2)

  3. Apache Commons Exec (1.2)

  4. Google Guava (17.0)

  5. PhantomJS Driver (1.1.0)

  6. Groovy (2.3.6)

Note: the latest Groovy is not strictly required, but I haven't found issues with it with the rest of OpenNMS.

Acceptance / Success Criteria

None

Lucidchart Diagrams

Activity

Alejandro Galue August 6, 2014 at 9:57 AM

Somes notes about Groovy:

In 1.12:

  1. The main POM has the old groovy-all (1.7.5) used by the remote poller.

  2. The latest groovy is defined in the Selenium's POM, and it will be placed on $OPENNMS_HOME/lib.

  3. It is not possible to put the latest Groovy in the main POM because the remote poller build will fail (gmaven).

In 1.13:

  1. The main POM has the latest groovy-all (replacing the old 1.8.9).

  2. The remote poller compiles and work fine using the latest groovy.

  3. The latest groovy from the main POM is referenced inside the Selenium's POM.

  4. A small fix was introduced on revision f00a107ca891cb586b1db2b475e6f5cc5926cd9e to fix the selenium assembly (as it is using groovy-all instead og groovy).

Alejandro Galue August 5, 2014 at 7:20 PM

Fixed on revision 345c77205612432765d11c8282eab16a7c3cbb7e for 1.12

Fixed

Details

Assignee

Reporter

Labels

Components

Fix versions

Affects versions

Priority

PagerDuty

Created August 5, 2014 at 5:33 PM
Updated March 17, 2015 at 5:42 PM
Resolved August 5, 2014 at 7:20 PM