Giter Club home page Giter Club logo

selenium-maven-template's Introduction

Selenium-Maven-Template

Join the chat at https://gitter.im/Ardesco/Selenium-Maven-Template

A maven template for Selenium 4 that has the latest dependencies so that you can just check out and start writing tests in four easy steps. If you like what you see have a look at my Selenium book Mastering Selenium Webdriver.

  1. Open a terminal window/command prompt
  2. Clone this project.
  3. cd Selenium-Maven-Template (Or whatever folder you cloned it into)
  4. mvn clean verify

All dependencies should now be downloaded and the example google cheese test will have run successfully in headless mode (Assuming you have Firefox installed in the default location)

What should I know?

  • To run any unit tests that test your Selenium framework you just need to ensure that all unit test file names end, or start with "test" and they will be run as part of the build.
  • The maven failsafe plugin has been used to create a profile with the id "selenium-tests". This is active by default, but if you want to perform a build without running your selenium tests you can disable it using:
mvn clean verify -P-selenium-tests
  • The maven-failsafe-plugin will pick up any files that end in IT by default. You can customise this is you would prefer to use a custom identifier for your Selenium tests.

Known problems...

  • It looks like SafariDriver is no longer playing nicely and we are waiting on Apple to fix it... Running safari driver locally in server mode and connecting to it like a grid seems to be the workaround.

Anything else?

Yes you can specify which browser to use by using one of the following on the command line:

  • -Dbrowser=firefox
  • -Dbrowser=chrome
  • -Dbrowser=ie
  • -Dbrowser=edge
  • -Dbrowser=opera
  • -Dbrowser=brave

If you want to toggle the use of chrome or firefox in headless mode set the headless flag (by default the headless flag is set to true)

  • -Dheadless=true
  • -Dheadless=false

You don't need to worry about downloading the IEDriverServer, EdgeDriver, ChromeDriver , OperaChromiumDriver, or GeckoDriver binaries, this project will do that for you automatically.

You can specify a grid to connect to where you can choose your browser, browser version and platform:

  • -Dremote=true
  • -DseleniumGridURL=http://{username}:{accessKey}@ondemand.saucelabs.com:80/wd/hub
  • -Dplatform=xp
  • -Dbrowser=firefox
  • -DbrowserVersion=44

You can even specify multiple threads (you can do it on a grid as well!):

  • -Dthreads=2

You can also specify a proxy to use

  • -DproxyEnabled=true
  • -DproxyHost=localhost
  • -DproxyPort=8080
  • -DproxyUsername=fred
  • -DproxyPassword=Password123

If the tests fail screenshots will be saved in ${project.basedir}/target/screenshots

If you need to force a binary overwrite you can do:

  • -Doverwrite.binaries=true

It's not working!!!

You have probably got outdated driver binaries, by default they are not overwritten if they already exist to speed things up. You have two options:

  • mvn clean verify -Doverwrite.binaries=true
  • Delete the selenium_standalone_binaries folder in your resources directory

Brave fails when in headless mode

Currently, Brave seems to be a bit flaky when running in headless mode, I would suggest running with -Dheadless=false

It's looking for the Brave binary in the wrong location

You probably don't have the brave binary installed in one of the default locations that this codebase is expecting. That's OK though, you can specify it by seeting the following system property:

  • -DbraveBinaryLocation=/path/to/brave-browser

selenium-maven-template's People

Contributors

adityai avatar ardesco avatar bitwiseman avatar dependabot[bot] avatar gitter-badger avatar hennr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

selenium-maven-template's Issues

Unable to find any expected files for marionette

When I run the project I get "Unable to find any expected files for marionette"

RepositoryMap.xml

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<root>
    <windows>
        <driver id="internetexplorer">
            <version id="2.53.1">
                <bitrate sixtyfourbit="true">
                    <filelocation>http://selenium-release.storage.googleapis.com/2.53/IEDriverServer_x64_2.53.1.zip</filelocation>
                    <hash>8bb35310de86b4dd58915a5f430d4ccab1266698</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
                <bitrate thirtytwobit="true">
                    <filelocation>http://selenium-release.storage.googleapis.com/2.53/IEDriverServer_Win32_2.53.1.zip</filelocation>
                    <hash>ecd2d40f6b9b50e18903fd4c0ad286939bfd04a7</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="googlechrome">
            <version id="2.22">
                <bitrate thirtytwobit="true" sixtyfourbit="true">
                    <filelocation>http://chromedriver.storage.googleapis.com/2.22/chromedriver_win32.zip</filelocation>
                    <hash>128f4ea29870d5f7c1235403e2deed13dc0903a7</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="operachromium">
            <version id="0.2.2">
                <bitrate sixtyfourbit="true">
                    <filelocation>https://github.com/operasoftware/operachromiumdriver/releases/download/v0.2.2/operadriver_win64.zip</filelocation>
                    <hash>8b84d334ca6dc5e30c168d8df080c1827e4c6fdb</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
                <bitrate thirtytwobit="true">
                    <filelocation>https://github.com/operasoftware/operachromiumdriver/releases/download/v0.2.2/operadriver_win32.zip</filelocation>
                    <hash>daa9ba52eeca5ea3cb8a9020b85642ec047e9890</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="phantomjs">
            <version id="2.0.0">
                <bitrate thirtytwobit="true" sixtyfourbit="true">
                    <filelocation>https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.0.0-windows.zip</filelocation>
                    <hash>ca0c753e5d8820a271dd7c2d6a9fad6ff86fb09f</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
            <version id="1.9.8">
                <bitrate thirtytwobit="true" sixtyfourbit="true">
                    <filelocation>https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-windows.zip</filelocation>
                    <hash>4531bd64df101a689ac7ac7f3e11bb7e77af8eff</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
         <driver id="marionette"> 
            <version id="0.8.0">
                <bitrate thirtytwobit="true" sixtyfourbit="true">
                    <filelocation>https://github.com/mozilla/geckodriver/releases/download/v0.8.0/geckodriver-v0.8.0-win32.zip</filelocation>
                    <hash>e5a676d2d0e5779dab78e65fdd11858e86832690</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
    </windows>
    <linux>
        <driver id="googlechrome">
            <version id="2.22">
                <bitrate sixtyfourbit="true">
                    <filelocation>http://chromedriver.storage.googleapis.com/2.22/chromedriver_linux64.zip</filelocation>
                    <hash>ee19e5fc596fcf0b66aac30383401a3015caec46</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
                <bitrate thirtytwobit="true">
                    <filelocation>http://chromedriver.storage.googleapis.com/2.22/chromedriver_linux32.zip</filelocation>
                    <hash>e5fd33ebc9f1fdaab2b7b67dd0a25ac1af930fd5</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="operachromium">
            <version id="0.2.2">
                <bitrate thirtytwobit="true">
                    <filelocation>https://github.com/operasoftware/operachromiumdriver/releases/download/v0.2.2/operadriver_linux32.zip</filelocation>
                    <hash>8b0b92a870a1b4ba619eb0b85ec587caa2942e5b</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
                <bitrate sixtyfourbit="true">
                    <filelocation>https://github.com/operasoftware/operachromiumdriver/releases/download/v0.2.2/operadriver_linux64.zip</filelocation>
                    <hash>c207c6916e20ecbbc7157e3bdeb4737f14f15fe3</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="phantomjs">
            <version id="1.9.8">
                <bitrate sixtyfourbit="true">
                    <filelocation>https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2</filelocation>
                    <hash>d29487b2701bcbe3c0a52bc176247ceda4d09d2d</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
                <bitrate thirtytwobit="true">
                    <filelocation>https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-i686.tar.bz2</filelocation>
                    <hash>efac5ae5b84a4b2b3fa845e8390fca39e6e637f2</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="marionette">
            <version id="0.8.0">
                <bitrate sixtyfourbit="true">
                    <filelocation>https://github.com/mozilla/geckodriver/releases/download/v0.8.0/geckodriver-0.8.0-linux64.gz</filelocation>
                    <hash>bca6b4acb815f5a13d275aac15b107e31c073e89</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
    </linux>
    <osx>
        <driver id="googlechrome">
            <version id="2.22">
                <bitrate thirtytwobit="true" sixtyfourbit="true">
                    <filelocation>http://chromedriver.storage.googleapis.com/2.22/chromedriver_mac32.zip</filelocation>
                    <hash>896b8e04aa86f3ced1a20d1a649c8ba849514f2d</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="operachromium">
            <version id="0.2.2">
                <bitrate sixtyfourbit="true">
                    <filelocation>https://github.com/operasoftware/operachromiumdriver/releases/download/v0.2.2/operadriver_mac64.zip</filelocation>
                    <hash>d58a3b676dda7ede5c38e5df218e7c619495c4ed</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="phantomjs">
            <version id="2.0.0">
                <bitrate thirtytwobit="true" sixtyfourbit="true">
                    <filelocation>https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.0.0-macosx.zip</filelocation>
                    <hash>97f87188bb2fc81e0c57ec3a376b722e3bcc30c9</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
            <version id="1.9.8">
                <bitrate thirtytwobit="true" sixtyfourbit="true">
                    <filelocation>https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-macosx.zip</filelocation>
                    <hash>d70bbefd857f21104c5961b9dd081781cb4d999a</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
        <driver id="marionette">
            <version id="0.8.0">
                <bitrate thirtytwobit="true" sixtyfourbit="true">
                    <filelocation>https://github.com/mozilla/geckodriver/releases/download/v0.8.0/geckodriver-0.8.0-OSX.gz</filelocation>
                    <hash>0db4231305f4d46bdc4355c3dc3c7936850f6ee6</hash>
                    <hashtype>sha1</hashtype>
                </bitrate>
            </version>
        </driver>
    </osx>
</root>`

Error Message:

[INFO] --------------------------------------------------------
[INFO]  DOWNLOADING SELENIUM STAND-ALONE EXECUTABLE BINARIES...
[INFO] --------------------------------------------------------
[INFO]  
[INFO]  file:/C:/workspace/SeleniumT/Selenium%20Maven%20Template/src/test/resources/RepositoryMap.xml is valid
[INFO]  
[INFO] Only get drivers for current Operating System: true
[INFO] Getting drivers for current operating system only.
[INFO] Archives will be downloaded to 'C:\workspace\SeleniumT\Selenium Maven Template\src\test\resources\selenium_standalone_zips'
[INFO] Standalone executable files will be extracted to 'C:\workspace\SeleniumT\Selenium Maven Template\src\test\resources\selenium_standalone_binaries'
[INFO]  
[INFO] Preparing to download Selenium Standalone Executable Binaries...
[INFO] Using http proxy: east.proxy.fedex.com:3128
[INFO] Downloading  'phantomjs-2.0.0-windows.zip'...
[INFO] Archive file 'phantomjs-2.0.0-windows.zip' is valid : true
[INFO] Extracting binary 'phantomjs.exe'...
[INFO] Binary copied to C:\workspace\SeleniumT\Selenium Maven Template\src\test\resources\selenium_standalone_binaries\windows\phantomjs\32bit\phantomjs.exe
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 23.316 s
[INFO] Finished at: 2016-07-07T20:54:40-06:00
[INFO] Final Memory: 15M/36M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.9:selenium (default) on project maven-template: Unable to find any expected files for marionette -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
Picked up JAVA_TOOL_OPTIONS: -agentlib:jvmhook
Picked up _JAVA_OPTIONS: -Xrunjvmhook -Xbootclasspath/a:"C:\Program Files (x86)\HP\LeanFT\bin\java_shared\classes";"C:\Program Files (x86)\HP\LeanFT\bin\java_shared\classes\jasmine.jar"

Problem with running more than one test

Hello Mark,
Thanks a lot for this template (and for "Mastering Selenium" book ๐Ÿ‘ ). I keep getting "org.openqa.selenium.remote.UnreachableBrowserException" or "org.openqa.selenium.remote.SessionNotFoundException" whenever I try to run more than one test with "-Dthreads=2". Have you ran into such an issue?
P.S. I was following your book code up to page objects chapter and came here to check possible difference in code (here it may be updated). My code seem to be the same when it matters (I left Chrome, FireFox and Safari on OSX in DriverType class)

Add Selenium methods in Java

Can I add various methods like waits , refresh and handle iframe in Selenium using java language with proper readme and use cases.

FirefoxOptions does not have any effect

Hello,

First of all - thank you very much for your excellent book and the code you share with us.

I think there is an issue with your DriverType.java code. You have the following code there:

    FIREFOX {
        public MutableCapabilities getDesiredCapabilities(Proxy proxySettings) {
            FirefoxOptions firefoxOptions = new FirefoxOptions();
            firefoxOptions.addPreference("marionette", true);
            return addProxySettings(firefoxOptions, proxySettings);
        }

        public RemoteWebDriver getWebDriverObject(MutableCapabilities capabilities) {
            return new FirefoxDriver(capabilities);
        }
    },

The following line does not have any effect:

firefoxOptions.addPreference("marionette", true);

If needed, it should be:

firefoxOptions.setCapability("marionette", true);

Second - in order to use FirefoxOptions in getDesiredCapabilities so that they have effect, I have changed the getWebDriverObject method from:

        public RemoteWebDriver getWebDriverObject(MutableCapabilities capabilities) {
        	return new FirefoxDriver(capabilities);
        }

to:

        public RemoteWebDriver getWebDriverObject(MutableCapabilities capabilities) {
        	return new FirefoxDriver((FirefoxOptions) capabilities);
        }

When is it useful? In your book you have an example with JMeter. In order to use it with Firefox without "Content encoding error", I added the following Firefox option:

firefoxOptions.addPreference("network.http.accept-encoding.secure", "true");

and optional (not needed for your Google example):

firefoxOptions.addPreference("network.http.accept-encoding", "true");

But they had no effect in your code until I changed it the way I showed above.

driver is not executable

Hello,

I'm trying to run tests from Jenkins on a ubuntu 16.04 server and I'm getting the following error.
I tried to set it manually from server, but seems like on the next run the permissions are overwritten. I also tried to make it executable programmatically on DriverBase > instantiateDriverObject() and still the same.
There is any way to fix this?

Thanks

[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running TestSuite
Feb 21, 2018 11:13:20 AM org.openqa.selenium.remote.DesiredCapabilities chrome
INFO: Using new ChromeOptions() is preferred to DesiredCapabilities.chrome()
 
Current Operating System: LINUX
Current Architecture: amd64
Current Browser Selection: CHROME_HEADLESS
 
====== Going to use LOCAL ======
Feb 21, 2018 11:13:20 AM org.openqa.selenium.remote.DesiredCapabilities chrome
INFO: Using new ChromeOptions() is preferred to DesiredCapabilities.chrome()
 
Current Operating System: LINUX
Current Architecture: amd64
Current Browser Selection: CHROME_HEADLESS
 
====== Going to use LOCAL ======
Unable to capture screenshot...
java.lang.IllegalStateException: The driver is not executable: /path/to/project/src/test/resources/selenium_standalone_binaries/linux/googlechrome/64bit/chromedriver

Running a single test (ex. from within your ide) fails

mvn -Dtest=packahes.tests.GoogleExampleIT ...

The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information, see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https://github.com/mozilla/geckodriver/releases
java.lang.IllegalStateException
	at com.google.common.base.Preconditions.checkState(Preconditions.java:847)
	at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:124)
	at org.openqa.selenium.firefox.GeckoDriverService.access$100(GeckoDriverService.java:42)
	at org.openqa.selenium.firefox.GeckoDriverService$Builder.findDefaultExecutable(GeckoDriverService.java:143)
	at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:335)
	at org.openqa.selenium.firefox.FirefoxDriver.toExecutor(FirefoxDriver.java:168)
	at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:125)
	at de.fubar.testing.framework.config.DriverType$1.getWebDriverObject(DriverType.java:63)
	at de.fubar.testing.framework.config.DriverFactory.instantiateWebDriver(DriverFactory.java:96)
	at de.fubar.testing.framework.config.DriverFactory.getDriver(DriverFactory.java:44)
	at de.fubar.testing.framework.DriverBase.getDriver(DriverBase.java:31)
	at de.fubar.testing.framework.tests.GoogleExampleIT.googleCheeseExample(GoogleExampleIT.java:20)

Jenkins

When I try to run the code with jenkins, it shows the following error:

Starting ChromeDriver 2.45.615279 (12b89733300bd268cff3b78fc76cb8f3a7cc44e5) on port 9745
Only local connections are allowed.
Unable to capture screenshot...
org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start.
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'ip-172-31-17-90', ip: '172.31.17.90', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-1032-aws', java.version: '1.8.0_211'
Driver info: driver.version: ChromeDriver
at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:202)
at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:188)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:79)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:213)
at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:131)
at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:181)
at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:168)
at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:157)
at com.lazerycode.selenium.config.DriverType$2.getWebDriverObject(DriverType.java:43)
at com.lazerycode.selenium.config.DriverFactory.instantiateWebDriver(DriverFactory.java:104)
at com.lazerycode.selenium.config.DriverFactory.getDriver(DriverFactory.java:46)
at com.lazerycode.selenium.DriverBase.getDriver(DriverBase.java:31)
at com.lazerycode.selenium.listeners.ScreenshotListener.onTestFailure(ScreenshotListener.java:51)
at org.testng.internal.Invoker.runTestListeners(Invoker.java:1699)
at org.testng.internal.Invoker.runTestListeners(Invoker.java:1683)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:697)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:821)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1131)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:124)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.openqa.selenium.net.UrlChecker$TimeoutException: Timed out waiting for [http://localhost:9745/status] to be available after 89479 ms
at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:100)
at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:197)
... 23 more
Caused by: java.util.concurrent.TimeoutException
at java.util.concurrent.FutureTask.get(FutureTask.java:205)
at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:156)
at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:75)
... 24 more
Unable to clear cookies, driver object is not viable...

Please help me ASAP

Chrome configuration works, but not Firefox

Hello.

This looks like it will be a very useful package. Thank you for providing it!

My experience is that Chrome seems to work but Firefox does not, on my system (AMD 54 Linux).

Here is the Chrome output:

cd /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master; JAVA_HOME=/usr/local/java/jdk1.8.0_60 /home/hpropes/netbeans-8.0.2/java/maven/bin/mvn -Dbrowser=chrome -Pselenium-tests install
Scanning for projects...

------------------------------------------------------------------------
Building Selenium Maven Template 1.0-SNAPSHOT
------------------------------------------------------------------------

--- maven-resources-plugin:2.5:resources (default-resources) @ maven-template ---
[debug] execute contextualize
Using 'UTF-8' encoding to copy filtered resources.
skip non existing resourceDirectory /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/main/resources

--- maven-compiler-plugin:3.5.1:compile (default-compile) @ maven-template ---
No sources to compile

--- maven-resources-plugin:2.5:testResources (default-testResources) @ maven-template ---
[debug] execute contextualize
Using 'UTF-8' encoding to copy filtered resources.
Copying 9 resources

--- maven-compiler-plugin:3.5.1:testCompile (default-testCompile) @ maven-template ---
Nothing to compile - all classes are up to date

>>> driver-binary-downloader-maven-plugin:1.0.11:selenium (default) @ maven-template >>>

--- maven-resources-plugin:2.5:resources (default-resources) @ maven-template ---
[debug] execute contextualize
Using 'UTF-8' encoding to copy filtered resources.
skip non existing resourceDirectory /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/main/resources

--- maven-compiler-plugin:3.5.1:compile (default-compile) @ maven-template ---
No sources to compile

--- maven-resources-plugin:2.5:testResources (default-testResources) @ maven-template ---
[debug] execute contextualize
Using 'UTF-8' encoding to copy filtered resources.
Copying 9 resources

--- maven-compiler-plugin:3.5.1:testCompile (default-testCompile) @ maven-template ---
Nothing to compile - all classes are up to date

<<< driver-binary-downloader-maven-plugin:1.0.11:selenium (default) @ maven-template <<<

--- driver-binary-downloader-maven-plugin:1.0.11:selenium (default) @ maven-template ---

--------------------------------------------------------
 DOWNLOADING SELENIUM STAND-ALONE EXECUTABLE BINARIES...
--------------------------------------------------------

 file:/home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/test/resources/RepositoryMap.xml is valid

Only get drivers for current Operating System: true
Getting drivers for current operating system only.
Archives will be downloaded to '/home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/test/resources/selenium_standalone_zips'
Standalone executable files will be extracted to '/home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/test/resources/selenium_standalone_binaries'

Preparing to download Selenium Standalone Executable Binaries...
Binary 'geckodriver' Exists: true
Using existing 'geckodriver'binary.
Binary 'operadriver' Exists: true
Using existing 'operadriver'binary.
Binary 'chromedriver' Exists: true
Using existing 'chromedriver'binary.
Binary 'phantomjs' Exists: true
Using existing 'phantomjs'binary.
Setting maven property - ${webdriver.gecko.driver} = /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/test/resources/selenium_standalone_binaries/linux/marionette/64bit/geckodriver
Setting maven property - ${webdriver.opera.driver} = /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/test/resources/selenium_standalone_binaries/linux/operachromium/64bit/operadriver
Setting maven property - ${webdriver.chrome.driver} = /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/test/resources/selenium_standalone_binaries/linux/googlechrome/64bit/chromedriver
Setting maven property - ${phantomjs.binary.path} = /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/src/test/resources/selenium_standalone_binaries/linux/phantomjs/64bit/phantomjs

--------------------------------------------------------
SELENIUM STAND-ALONE EXECUTABLE DOWNLOADS COMPLETE
--------------------------------------------------------


--- maven-surefire-plugin:2.10:test (default-test) @ maven-template ---
Surefire report directory: /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------

Results :

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0


--- maven-jar-plugin:2.3.2:jar (default-jar) @ maven-template ---
Building jar: /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/target/maven-template-1.0-SNAPSHOT.jar

--- maven-failsafe-plugin:2.19.1:integration-test (default) @ maven-template ---

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running com.lazerycode.selenium.tests.GoogleExampleIT

Current Operating System: LINUX
Current Architecture: amd64
Current Browser Selection: CHROME

Starting ChromeDriver 2.23.409687 (c46e862757edc04c06b1bd88724d15a5807b84d1) on port 2856
Only local connections are allowed.
Page title is: Google
Page title is: Cheese! - Google Search
Page title is: Google
Page title is: Milk! - Google Search
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.327 sec - in com.lazerycode.selenium.tests.GoogleExampleIT

Results :

Tests run: 2, Failures: 0, Errors: 0, Skipped: 0


--- maven-failsafe-plugin:2.19.1:verify (default) @ maven-template ---

--- maven-install-plugin:2.3.1:install (default-install) @ maven-template ---
Installing /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/target/maven-template-1.0-SNAPSHOT.jar to /home/hpropes/.m2/repository/com/lazerycode/selenium/maven-template/1.0-SNAPSHOT/maven-template-1.0-SNAPSHOT.jar
Installing /home/hpropes/NetBeansProjects/Selenium-Maven-Template-master/pom.xml to /home/hpropes/.m2/repository/com/lazerycode/selenium/maven-template/1.0-SNAPSHOT/maven-template-1.0-SNAPSHOT.pom
------------------------------------------------------------------------
BUILD SUCCESS
------------------------------------------------------------------------
Total time: 7.489s
Finished at: Mon Aug 15 09:36:02 EDT 2016
Final Memory: 18M/468M
------------------------------------------------------------------------
The requested profile "skinny-war" could not be activated because it does not exist.
The requested profile "ejb-devel" could not be activated because it does not exist.

Best practise for code organising

Hello Ardesco,

This is a lovely startup you have given for selenium starters. If possible can you add how to organise the test suite / cases?

I like to know what controls the order of execution when i have more than one test file?

Error updating artifacts?

I followed these instructions and I got a failure with goal com.lazerycode.selenium:driver-binary-downloader.....

I'm using maven 3 and Java 6.

Error executing "mvn clean install -U -e -Pselenium-tests"

Stacktrace

[ERROR] Failed to execute goal com.lazerycode.selenium:driver-binary-downloader-maven-plugin:0.9.1:selenium (default) on project maven-template: Unable to parse configuration of mojo com.lazerycode.selenium:driver-binary-downloader-maven-plugin:0.9.1:selenium: Cannot assign value 'null' (type: class java.lang.String) to protected java.util.Map com.lazerycode.selenium.SeleniumServerMojo.operatingSystems: Can not set java.util.Map field com.lazerycode.selenium.SeleniumServerMojo.operatingSystems to java.lang.String -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.lazerycode.selenium:driver-binary-downloader-maven-plugin:0.9.1:selenium (default) on project maven-template: Unable to parse configuration of mojo com.lazerycode.selenium:driver-binary-downloader-maven-plugin:0.9.1:selenium: Cannot assign value 'null' (type: class java.lang.String) to protected java.util.Map com.lazerycode.selenium.SeleniumServerMojo.operatingSystems
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:221)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.apache.maven.plugin.PluginConfigurationException: Unable to parse configuration of mojo com.lazerycode.selenium:driver-binary-downloader-maven-plugin:0.9.1:selenium: Cannot assign value 'null' (type: class java.lang.String) to protected java.util.Map com.lazerycode.selenium.SeleniumServerMojo.operatingSystems
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.populatePluginFields(DefaultMavenPluginManager.java:597)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo(DefaultMavenPluginManager.java:529)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:92)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 19 more
Caused by: org.codehaus.plexus.component.configurator.ComponentConfigurationException: Cannot assign value 'null' (type: class java.lang.String) to protected java.util.Map com.lazerycode.selenium.SeleniumServerMojo.operatingSystems
at org.codehaus.plexus.component.configurator.converters.ComponentValueSetter.setValueUsingField(ComponentValueSetter.java:230)
at org.codehaus.plexus.component.configurator.converters.ComponentValueSetter.configure(ComponentValueSetter.java:355)
at org.codehaus.plexus.component.configurator.converters.composite.ObjectWithFieldsConverter.processConfiguration(ObjectWithFieldsConverter.java:161)
at org.codehaus.plexus.component.configurator.BasicComponentConfigurator.configureComponent(BasicComponentConfigurator.java:56)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.populatePluginFields(DefaultMavenPluginManager.java:567)
... 22 more
Caused by: java.lang.IllegalArgumentException: Can not set java.util.Map field com.lazerycode.selenium.SeleniumServerMojo.operatingSystems to java.lang.String
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:146)
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:150)
at sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:63)
at java.lang.reflect.Field.set(Field.java:657)
at org.codehaus.plexus.component.configurator.converters.ComponentValueSetter.setValueUsingField(ComponentValueSetter.java:217)
... 26 more

How to Open Chrome browser with RemoteWebDriver

Hi,

I am able to open Firefox browser with RemoteWebDriver, For that I need to do little modification which I did. But when I am trying to open Chrome browser it is giving me below error.

Exception in thread "pool-1-thread-4" org.openqa.selenium.WebDriverException: The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see http://code.google.com/p/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://chromedriver.storage.googleapis.com/index.html

I checked my path in code below line and its proper. Is there any other setting which I need to do?
System.setProperty("webdriver.chrome.driver", _prop.getString("binaryRootFolder") + "/windows/googlechrome/64bit/2.9/chromedriver.exe");

Thanks,
Jai

Failed to execute goal net.wouterdanes.docker... Connection refused

I didn't realize until this error popped up that docker containers were already in your project configuration. It has been a while since I looked at your repo.

Please let me know how I can resolve the following issue and please let me know what exactly this docker maven plugin is doing.

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.620 s
[INFO] Finished at: 2020-02-17T09:33:33-08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal net.wouterdanes.docker:docker-maven-plugin:3.0:start-containers (start) on project maven-template: Execution start of goal net.wouterdanes.docker:docker-maven-plugin:3.0:start-containers failed: java.net.ConnectException: Connection refused (Connection refused) -> [Help 1]
[ERROR]

Running from Eclipse or Jetbrains..

Hi Ardesco,

This is a buautiful peice of code. Thanks for putting together the details.
however when I try to run from eclipse or Jetbrains , I am getting error that. How do we run ? Or do I need to add anything to the system path.

java.lang.IllegalStateException: The path to the driver executable The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information, see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https://github.com/mozilla/geckodriver/releases at org.openqa.selenium.internal.Require$StateChecker.nonNull(Require.java:280) ~[selenium-api-4.1.0.jar:?]

pom does not build as it is

i am running on windows 7 / jdk 7 /maven 3.0.4

selenium version 3.0.0 does not play well with jdk 7

Moving the version to 2.47.1 works to get the builds going.

-D browser JVM arg

Hi Ardesco,

Where does the project pick the -Dbrowser setting ? I currently have my POM set to 'chrome' but have specified '-Dbrowser' to be 'firefox' inthe JVM args.

I would expect the tests to now run in firefox but instead Chrome is used.

I can see in SeleniumBase that the value from the POM (via the dev.properties file) is checked against the ENUM for browserType and if a valid value is found it is assigned to the 'browserType' variable and it defaults to firefox is an invalid value is used.

I can't see where the -D param is checked though ...

problems with file permissions

when I use -Doverwritefile=true, the downloaded drivers does not have the executable permission.

I need to manually connect to my server and chmod the files to make it work.
How can I change the permission directly in the project config ?

Lot of webdrivers instances opened

Let's assume we have close to 500 methods for tests, in the given approach you'll have 500 instances of webdriver opened until you call the AfterSuite and iterates over the array. Are you agree? Maybe I've missed something but in the only place you call the quit for driver is on that method.

Maybe a good approach could be index the drivers by threadId/classname/method to remove on AfterMethod.

Thanks!

IllegalStateException

Hi, I got:

java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.chrome.driver system property;

maximise() fails in docker container with errorjava.awt.HeadlessException

Hi @Ardesco

I've found your solution about browser maximize in https://groups.google.com/forum/#!msg/webdriver/9Ma5IfB_kzk/-vdhBhkPHs4J

But it fails in case of container setup on mac mini , any idea what may be going wrong ?

It works perfectly with stand alone browser through

public void maximise() {
Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension screenResolution = new Dimension((int) toolkit.getScreenSize().getWidth(), (int) toolkit.getScreenSize().getHeight());
driver.manage().window().setSize(screenResolution);
}

java.awt.HeadlessException at sun.awt.HeadlessToolkit.getScreenSize(HeadlessToolkit.java:284)

Thanks & Regards,
Vikram

how to use selenium-maven-template

I'd like to extend Selenium Maven Template with my own test code.

Is this permitted and if so, what is the best way to do this?

  1. create my own source control repo and check Selenium Maven Template in
  2. fork your project on github
  3. Is there a way to use your project as a library and just include that in my project?

I would prefer to do #1 or #3 but please advise. thanks!

How can i specify which browser to use?

Hello!
It's really cool, but, please, help me: how can i specify which browser to use?
Where and how should I specify the option to use one browser, for example, google chrome, or several at once? Now every time i have message that it use browser by default.

How to generate Selenium log of the executed test?

Hi,

I'm exploring this code and have a question. How do we generate Selenium log when we invoke/instantiate WebDriver like in your code?

I know we can use command line switched (for IE) like --log-file= and --log-level= while starting stand alone selenium through command line but in your example the WebDriver is just instantiated via code and there is no way we can define the above command line arguments.

Any help in this regard will be much appreciated.

Thanks.

Where to download com.lazerycode.selenium:query:jar:2.0.0-beta3

[ERROR] Failed to execute goal on project maven-template: Could not resolve dependencies for project com.lazerycode.selenium:maven-template:jar:1.0-SNAPSHOT: Failure to find com.lazerycode.selenium:query:jar:2.0.0-beta3 in https://oss.sonatype.org/content/repositories/snapshots/ was cached in the local repository, resolution will not be reattempted until the update interval of nexus has elapsed or updates are forced -> [Help 1]

I can't download from you nexus.

cucumber-jvm support

Team,
is there any plan to add cucumber-jvm to this project as it supports BDD?.

Thanks
Karthik

Question: hub/grid and remote connection

Hello Ardesco,

This is a great template and has helped me to set up the selenium tests locally. I would like to run the tests on hub/grid setup with the same template. Im trying to integrate this with our current CI process. I have windows machine in the network which acts as a hub and grid with all the popular browsers installed. jenkins box doesn't have display property as it is a EC2 instance and so is the windows.

I will be running the tests code as a jenkins job. The job has a script running which basically connects to the hub/grid setup.

mvn clean verify -DseleniumGridURL=http://jenkins:*******@selenium-hub.blah.com:80/wd/hub

Is that about right?

Thanks!

IEDriverServer in 32/64 bit

I did not find a way in the README.md to start a specific bit version of the Server. But I read that it is best practice to use the 32 bit version. It seems to be the default setting in this project the 64 bit version is used.

Exception when running the tests

Hi,

I did clone your Selenium Maven Template, however if i run the following command i am getting an exception

Command ran : mvn verify -Pselenium-tests

Exceptions seen:

xception in thread "pool-1-thread-2" java.lang.NoSuchMethodError: org.openqa.selenium.io.IOUtils.closeQuietly(Ljava/io/Closeable;)V
at org.openqa.selenium.firefox.FirefoxProfile.updateUserPrefs(FirefoxProfile.java:333)
at org.openqa.selenium.firefox.FirefoxProfile.layoutOnDisk(FirefoxProfile.java:450)
at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:77)
at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:244)
at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:110)
at org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:188)
at org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:183)
at org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:100)
at com.lazerycode.selenium.SeleniumBase.loadWebDriver(SeleniumBase.java:140)
at com.lazerycode.selenium.SeleniumBase.access$000(SeleniumBase.java:20)
at com.lazerycode.selenium.SeleniumBase$1.initialValue(SeleniumBase.java:29)
at com.lazerycode.selenium.SeleniumBase$1.initialValue(SeleniumBase.java:25)
at java.lang.ThreadLocal.setInitialValue(ThreadLocal.java:141)
at java.lang.ThreadLocal.get(ThreadLocal.java:131)
at com.lazerycode.selenium.SeleniumBase.getDriver(SeleniumBase.java:56)
at com.lazerycode.selenium.ScreenshotListener.onTestFailure(ScreenshotListener.java:27)
at org.testng.internal.Invoker.runTestListeners(Invoker.java:1895)
at org.testng.internal.Invoker.runTestListeners(Invoker.java:1879)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1292)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)

Can you please let me know how do i fix this issue, also is there a way i can run the tests directly from my eclipse like run as maven test ?

Thanks
Srinidhi

Drivers for armv7

I don't know where can i set drivers for armv7
Maven automatically download wrong linux 32bit drivers

Current Operating System: LINUX
Current Architecture: arm
Current Browser Selection: PHANTOMJS
 
Feb 27, 2017 1:35:09 AM org.openqa.selenium.phantomjs.PhantomJSDriverService <init>
INFO: executable: /project/src/test/resources/selenium_standalone_binaries/linux/phantomjs/32bit/phantomjs
Feb 27, 2017 1:35:09 AM org.openqa.selenium.phantomjs.PhantomJSDriverService <init>
INFO: port: 28425
Feb 27, 2017 1:35:09 AM org.openqa.selenium.phantomjs.PhantomJSDriverService <init>
INFO: arguments: [--web-security=false, --ssl-protocol=any, --ignore-ssl-errors=true, --proxy-type=none, --webdriver=28425, --webdriver-logfile=/project/phantomjsdriver.log]
Feb 27, 2017 1:35:09 AM org.openqa.selenium.phantomjs.PhantomJSDriverService <init>
INFO: environment: {}
/project/src/test/resources/selenium_standalone_binaries/linux/phantomjs/32bit/phantomjs: 1: /project/src/test/resources/selenium_standalone_binaries/linux/phantomjs/32bit/phantomjs: Syntax error: word unexpected (expecting ")")
Feb 27, 2017 1:35:31 AM org.openqa.selenium.os.UnixProcess checkForError
SEVERE: org.apache.commons.exec.ExecuteException: Process exited with an error: 2 (Exit value: 2)

and i need to replace manual driver. Here is link for working driver for armv7
https://github.com/fg2it/phantomjs-on-raspberry/tree/master/rpi-2-3/wheezy-jessie/v2.1.1

system properties are not being picked up

I am not sure if it's me not understanding Failsafe but it appears that the system properties declared in the configuration section are not being recognized and the job fails. For example, I hardcoded

<browser>chrome</browser> in the systemPropertyValues section and selenium was trying to invoke the Firefox webdriver. BTW - systemProperties is deprecated in favor systemPropertyValues.

Upgrade Webdriver download links and version

I try to change the file repositoryMap.xml to introduce new version of webdriver and according links.

Some changes have been done to refer the new version.

The test halts because it can not find the new driver since the driver-binary-downloader-maven-plugin continues to download the previous versions.

When running the test, the new version files are not downloaded but the previous version set before.

Do u have any idea on how to resolve this problem ?

Case with test execution

Hi. Can you check, why I change GoogleExampleIT.java to TestExample.java, or any random string maven failed to execute test class?

Thanks.

How to run GoogleExampleIT

Hi... thanks for your attention

I'm a beginner on maven project, and I'm having a lot of trouble trying to run the sample test
I already try this code below, but nothing works :

  • mvn clean verify
  • mvn clean verify -Doverwrite.binaries=true
  • mvn -Dit.test=GoogleExampleIT verify
  • mvn -Dbrowser=chrome -Dit.test=GoogleExampleIT verify

this my command prompt capture
2020-09-04_030400

thanks

Eclipse pom file error

Hi,

I had to add to the pom file to get rid of an error in Eclipse Mars.1 Release (4.5.1).
The error states: "Plugin execution not covered by lifecycle configuration: com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.7:selenium (execution: default, phase: test-compile)"

You can read more about it here:
http://stackoverflow.com/questions/6352208/how-to-solve-plugin-execution-not-covered-by-lifecycle-
configuration-for-sprin/13733232#13733232

Keep up the good work! :)

Cheers,
Chris

Not working

whenever I run mvn commad,
I get the following
1556780876120 mozrunner::runner INFO Running command: "/usr/lib/firefox/firefox" "-marionette" "-headless" "-foreground" "-no-remote" "-profile" "/tmp/rust_mozprofile.XnsUOi4ypkj1"
*** You are running in headless mode.
1556780878108 [email protected] WARN Loading extension '[email protected]': Reading manifest: Invalid extension permission: mozillaAddons
1556780878112 [email protected] WARN Loading extension '[email protected]': Reading manifest: Invalid extension permission: resource://pdf.js/
1556780878112 [email protected] WARN Loading extension '[email protected]': Reading manifest: Invalid extension permission: about:reader*
JavaScript error: jar:file:///usr/lib/firefox/omni.ja!/components/nsPrompter.js, line 344: NS_ERROR_NOT_AVAILABLE: Cannot call openModalWindow on a hidden window
[Child 12107, Chrome_ChildThread] WARNING: pipe error (50): Connection reset by peer: file /build/firefox-6m4fHv/firefox-66.0.3+build1/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 357
Exiting due to channel error.
Unable to capture screenshot...
org.openqa.selenium.WebDriverException: connection refused
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'ip-172-31-17-90', ip: '172.31.17.90', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-1035-aws', java.version: '1.8.0_211'
Driver info: driver.version: FirefoxDriver
remote stacktrace:

Upgrade Webdriver download links and version

I try to change the file repositoryMap.xml to introduce new version of webdriver and according links.

Some changes have been done to refer the new version.

The test halts because it can not find the new driver since the driver-binary-downloader-maven-plugin continues to download the previous versions.

When running the test, the new version files are not downloaded but the previous version set before.

Do u have any idea on how to resolve this problem ?

Failed to compile - A required class was missing

[INFO] --- driver-binary-downloader-maven-plugin:1.0.16:selenium (default) @ maven-template ---
[WARNING] Error injecting: com.lazerycode.selenium.SeleniumServerMojo
java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
at java.lang.Class.getDeclaredConstructors0 (Native Method)
at java.lang.Class.privateGetDeclaredConstructors (Class.java:3110)
at java.lang.Class.getDeclaredConstructors (Class.java:2314)
at com.google.inject.spi.InjectionPoint.forConstructorOf (InjectionPoint.java:245)
at com.google.inject.internal.ConstructorBindingImpl.create (ConstructorBindingImpl.java:99)
at com.google.inject.internal.InjectorImpl.createUninitializedBinding (InjectorImpl.java:658)
at com.google.inject.internal.InjectorImpl.createJustInTimeBinding (InjectorImpl.java:882)
at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive (InjectorImpl.java:805)
at com.google.inject.internal.InjectorImpl.getJustInTimeBinding (InjectorImpl.java:282)
at com.google.inject.internal.InjectorImpl.getBindingOrThrow (InjectorImpl.java:214)
at com.google.inject.internal.InjectorImpl.getProviderOrThrow (InjectorImpl.java:1006)
at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1038)
at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1001)
at com.google.inject.internal.InjectorImpl.getInstance (InjectorImpl.java:1051)
at org.eclipse.sisu.space.AbstractDeferredClass.get (AbstractDeferredClass.java:48)
at com.google.inject.internal.ProviderInternalFactory.provision (ProviderInternalFactory.java:81)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision (InternalFactoryToInitializableAdapter.java:53)
at com.google.inject.internal.ProviderInternalFactory$1.call (ProviderInternalFactory.java:65)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:115)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:133)
at com.google.inject.internal.ProvisionListenerStackCallback.provision (ProvisionListenerStackCallback.java:68)
at com.google.inject.internal.ProviderInternalFactory.circularGet (ProviderInternalFactory.java:63)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.get (InternalFactoryToInitializableAdapter.java:45)
at com.google.inject.internal.InjectorImpl$2$1.call (InjectorImpl.java:1016)
at com.google.inject.internal.InjectorImpl.callInContext (InjectorImpl.java:1092)
at com.google.inject.internal.InjectorImpl$2.get (InjectorImpl.java:1012)
at org.eclipse.sisu.inject.Guice4$1.get (Guice4.java:162)
at org.eclipse.sisu.inject.LazyBeanEntry.getValue (LazyBeanEntry.java:81)
at org.eclipse.sisu.plexus.LazyPlexusBean.getValue (LazyPlexusBean.java:51)
at org.codehaus.plexus.DefaultPlexusContainer.lookup (DefaultPlexusContainer.java:263)
at org.codehaus.plexus.DefaultPlexusContainer.lookup (DefaultPlexusContainer.java:255)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo (DefaultMavenPluginManager.java:519)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:121)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass (SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass (ClassRealm.java:271)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:247)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:239)
at java.lang.Class.getDeclaredConstructors0 (Native Method)
at java.lang.Class.privateGetDeclaredConstructors (Class.java:3110)
at java.lang.Class.getDeclaredConstructors (Class.java:2314)
at com.google.inject.spi.InjectionPoint.forConstructorOf (InjectionPoint.java:245)
at com.google.inject.internal.ConstructorBindingImpl.create (ConstructorBindingImpl.java:99)
at com.google.inject.internal.InjectorImpl.createUninitializedBinding (InjectorImpl.java:658)
at com.google.inject.internal.InjectorImpl.createJustInTimeBinding (InjectorImpl.java:882)
at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive (InjectorImpl.java:805)
at com.google.inject.internal.InjectorImpl.getJustInTimeBinding (InjectorImpl.java:282)
at com.google.inject.internal.InjectorImpl.getBindingOrThrow (InjectorImpl.java:214)
at com.google.inject.internal.InjectorImpl.getProviderOrThrow (InjectorImpl.java:1006)
at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1038)
at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1001)
at com.google.inject.internal.InjectorImpl.getInstance (InjectorImpl.java:1051)
at org.eclipse.sisu.space.AbstractDeferredClass.get (AbstractDeferredClass.java:48)
at com.google.inject.internal.ProviderInternalFactory.provision (ProviderInternalFactory.java:81)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision (InternalFactoryToInitializableAdapter.java:53)
at com.google.inject.internal.ProviderInternalFactory$1.call (ProviderInternalFactory.java:65)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:115)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:133)
at com.google.inject.internal.ProvisionListenerStackCallback.provision (ProvisionListenerStackCallback.java:68)
at com.google.inject.internal.ProviderInternalFactory.circularGet (ProviderInternalFactory.java:63)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.get (InternalFactoryToInitializableAdapter.java:45)
at com.google.inject.internal.InjectorImpl$2$1.call (InjectorImpl.java:1016)
at com.google.inject.internal.InjectorImpl.callInContext (InjectorImpl.java:1092)
at com.google.inject.internal.InjectorImpl$2.get (InjectorImpl.java:1012)
at org.eclipse.sisu.inject.Guice4$1.get (Guice4.java:162)
at org.eclipse.sisu.inject.LazyBeanEntry.getValue (LazyBeanEntry.java:81)
at org.eclipse.sisu.plexus.LazyPlexusBean.getValue (LazyPlexusBean.java:51)
at org.codehaus.plexus.DefaultPlexusContainer.lookup (DefaultPlexusContainer.java:263)
at org.codehaus.plexus.DefaultPlexusContainer.lookup (DefaultPlexusContainer.java:255)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo (DefaultMavenPluginManager.java:519)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:121)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.843 s
[INFO] Finished at: 2018-01-13T12:47:47+05:30
[INFO] Final Memory: 17M/57M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium (default) on project maven-template: Execution default of goal com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium failed: A required class was missing while executing com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium: javax/xml/bind/JAXBException
[ERROR] -----------------------------------------------------
[ERROR] realm = plugin>com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/var/root/.m2/repository/com/lazerycode/selenium/driver-binary-downloader-maven-plugin/1.0.16/driver-binary-downloader-maven-plugin-1.0.16.jar
[ERROR] urls[1] = file:/var/root/.m2/repository/org/apache/maven/maven-builder-support/3.3.9/maven-builder-support-3.3.9.jar
[ERROR] urls[2] = file:/var/root/.m2/repository/org/eclipse/aether/aether-util/1.0.2.v20150114/aether-util-1.0.2.v20150114.jar
[ERROR] urls[3] = file:/var/root/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
[ERROR] urls[4] = file:/var/root/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.2/org.eclipse.sisu.inject-0.3.2.jar
[ERROR] urls[5] = file:/var/root/.m2/repository/com/google/inject/guice/4.0/guice-4.0-no_aop.jar
[ERROR] urls[6] = file:/var/root/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
[ERROR] urls[7] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.21/plexus-interpolation-1.21.jar
[ERROR] urls[8] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.22/plexus-utils-3.0.22.jar
[ERROR] urls[9] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.6/plexus-component-annotations-1.6.jar
[ERROR] urls[10] = file:/var/root/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
[ERROR] urls[11] = file:/var/root/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[12] = file:/var/root/.m2/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar
[ERROR] urls[13] = file:/var/root/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.4/maven-plugin-annotations-3.4.jar
[ERROR] urls[14] = file:/var/root/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar
[ERROR] urls[15] = file:/var/root/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar
[ERROR] urls[16] = file:/var/root/.m2/repository/org/apache/commons/commons-compress/1.10/commons-compress-1.10.jar
[ERROR] urls[17] = file:/var/root/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar
[ERROR] urls[18] = file:/var/root/.m2/repository/org/apache/httpcomponents/httpclient/4.3.3/httpclient-4.3.3.jar
[ERROR] urls[19] = file:/var/root/.m2/repository/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar
[ERROR] urls[20] = file:/var/root/.m2/repository/org/apache/httpcomponents/httpcore/4.3.2/httpcore-4.3.2.jar
[ERROR] urls[21] = file:/var/root/.m2/repository/com/google/guava/guava/10.0.1/guava-10.0.1.jar
[ERROR] urls[22] = file:/var/root/.m2/repository/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar
[ERROR] urls[23] = file:/var/root/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar
[ERROR] urls[24] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-resources/1.1.0/plexus-resources-1.1.0.jar
[ERROR] urls[25] = file:/var/root/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import from realm ClassRealm[maven.api, parent: null]]
[ERROR]
[ERROR] -----------------------------------------------------
[ERROR] : javax.xml.bind.JAXBException
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium (default) on project maven-template: Execution default of goal com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium failed: A required class was missing while executing com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium: javax/xml/bind/JAXBException

realm = plugin>com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16
strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
urls[0] = file:/var/root/.m2/repository/com/lazerycode/selenium/driver-binary-downloader-maven-plugin/1.0.16/driver-binary-downloader-maven-plugin-1.0.16.jar
urls[1] = file:/var/root/.m2/repository/org/apache/maven/maven-builder-support/3.3.9/maven-builder-support-3.3.9.jar
urls[2] = file:/var/root/.m2/repository/org/eclipse/aether/aether-util/1.0.2.v20150114/aether-util-1.0.2.v20150114.jar
urls[3] = file:/var/root/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
urls[4] = file:/var/root/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.2/org.eclipse.sisu.inject-0.3.2.jar
urls[5] = file:/var/root/.m2/repository/com/google/inject/guice/4.0/guice-4.0-no_aop.jar
urls[6] = file:/var/root/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
urls[7] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.21/plexus-interpolation-1.21.jar
urls[8] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.22/plexus-utils-3.0.22.jar
urls[9] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.6/plexus-component-annotations-1.6.jar
urls[10] = file:/var/root/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
urls[11] = file:/var/root/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
urls[12] = file:/var/root/.m2/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar
urls[13] = file:/var/root/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.4/maven-plugin-annotations-3.4.jar
urls[14] = file:/var/root/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar
urls[15] = file:/var/root/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar
urls[16] = file:/var/root/.m2/repository/org/apache/commons/commons-compress/1.10/commons-compress-1.10.jar
urls[17] = file:/var/root/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar
urls[18] = file:/var/root/.m2/repository/org/apache/httpcomponents/httpclient/4.3.3/httpclient-4.3.3.jar
urls[19] = file:/var/root/.m2/repository/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar
urls[20] = file:/var/root/.m2/repository/org/apache/httpcomponents/httpcore/4.3.2/httpcore-4.3.2.jar
urls[21] = file:/var/root/.m2/repository/com/google/guava/guava/10.0.1/guava-10.0.1.jar
urls[22] = file:/var/root/.m2/repository/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar
urls[23] = file:/var/root/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar
urls[24] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-resources/1.1.0/plexus-resources-1.1.0.jar
urls[25] = file:/var/root/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
Number of foreign imports: 1
import: Entry[import from realm ClassRealm[maven.api, parent: null]]


at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)

Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default of goal com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium failed: A required class was missing while executing com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium: javax/xml/bind/JAXBException

realm = plugin>com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16
strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
urls[0] = file:/var/root/.m2/repository/com/lazerycode/selenium/driver-binary-downloader-maven-plugin/1.0.16/driver-binary-downloader-maven-plugin-1.0.16.jar
urls[1] = file:/var/root/.m2/repository/org/apache/maven/maven-builder-support/3.3.9/maven-builder-support-3.3.9.jar
urls[2] = file:/var/root/.m2/repository/org/eclipse/aether/aether-util/1.0.2.v20150114/aether-util-1.0.2.v20150114.jar
urls[3] = file:/var/root/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
urls[4] = file:/var/root/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.2/org.eclipse.sisu.inject-0.3.2.jar
urls[5] = file:/var/root/.m2/repository/com/google/inject/guice/4.0/guice-4.0-no_aop.jar
urls[6] = file:/var/root/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
urls[7] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.21/plexus-interpolation-1.21.jar
urls[8] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.22/plexus-utils-3.0.22.jar
urls[9] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.6/plexus-component-annotations-1.6.jar
urls[10] = file:/var/root/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
urls[11] = file:/var/root/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
urls[12] = file:/var/root/.m2/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar
urls[13] = file:/var/root/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.4/maven-plugin-annotations-3.4.jar
urls[14] = file:/var/root/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar
urls[15] = file:/var/root/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar
urls[16] = file:/var/root/.m2/repository/org/apache/commons/commons-compress/1.10/commons-compress-1.10.jar
urls[17] = file:/var/root/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar
urls[18] = file:/var/root/.m2/repository/org/apache/httpcomponents/httpclient/4.3.3/httpclient-4.3.3.jar
urls[19] = file:/var/root/.m2/repository/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar
urls[20] = file:/var/root/.m2/repository/org/apache/httpcomponents/httpcore/4.3.2/httpcore-4.3.2.jar
urls[21] = file:/var/root/.m2/repository/com/google/guava/guava/10.0.1/guava-10.0.1.jar
urls[22] = file:/var/root/.m2/repository/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar
urls[23] = file:/var/root/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar
urls[24] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-resources/1.1.0/plexus-resources-1.1.0.jar
urls[25] = file:/var/root/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
Number of foreign imports: 1
import: Entry[import from realm ClassRealm[maven.api, parent: null]]


at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:168)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)

Caused by: org.apache.maven.plugin.PluginContainerException: A required class was missing while executing com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16:selenium: javax/xml/bind/JAXBException

realm = plugin>com.lazerycode.selenium:driver-binary-downloader-maven-plugin:1.0.16
strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
urls[0] = file:/var/root/.m2/repository/com/lazerycode/selenium/driver-binary-downloader-maven-plugin/1.0.16/driver-binary-downloader-maven-plugin-1.0.16.jar
urls[1] = file:/var/root/.m2/repository/org/apache/maven/maven-builder-support/3.3.9/maven-builder-support-3.3.9.jar
urls[2] = file:/var/root/.m2/repository/org/eclipse/aether/aether-util/1.0.2.v20150114/aether-util-1.0.2.v20150114.jar
urls[3] = file:/var/root/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
urls[4] = file:/var/root/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.2/org.eclipse.sisu.inject-0.3.2.jar
urls[5] = file:/var/root/.m2/repository/com/google/inject/guice/4.0/guice-4.0-no_aop.jar
urls[6] = file:/var/root/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
urls[7] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.21/plexus-interpolation-1.21.jar
urls[8] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.22/plexus-utils-3.0.22.jar
urls[9] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.6/plexus-component-annotations-1.6.jar
urls[10] = file:/var/root/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
urls[11] = file:/var/root/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
urls[12] = file:/var/root/.m2/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar
urls[13] = file:/var/root/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.4/maven-plugin-annotations-3.4.jar
urls[14] = file:/var/root/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar
urls[15] = file:/var/root/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar
urls[16] = file:/var/root/.m2/repository/org/apache/commons/commons-compress/1.10/commons-compress-1.10.jar
urls[17] = file:/var/root/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar
urls[18] = file:/var/root/.m2/repository/org/apache/httpcomponents/httpclient/4.3.3/httpclient-4.3.3.jar
urls[19] = file:/var/root/.m2/repository/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar
urls[20] = file:/var/root/.m2/repository/org/apache/httpcomponents/httpcore/4.3.2/httpcore-4.3.2.jar
urls[21] = file:/var/root/.m2/repository/com/google/guava/guava/10.0.1/guava-10.0.1.jar
urls[22] = file:/var/root/.m2/repository/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar
urls[23] = file:/var/root/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar
urls[24] = file:/var/root/.m2/repository/org/codehaus/plexus/plexus-resources/1.1.0/plexus-resources-1.1.0.jar
urls[25] = file:/var/root/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
Number of foreign imports: 1
import: Entry[import from realm ClassRealm[maven.api, parent: null]]


at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:166)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)

Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
at java.lang.Class.getDeclaredConstructors0 (Native Method)
at java.lang.Class.privateGetDeclaredConstructors (Class.java:3110)
at java.lang.Class.getDeclaredConstructors (Class.java:2314)
at com.google.inject.spi.InjectionPoint.forConstructorOf (InjectionPoint.java:245)
at com.google.inject.internal.ConstructorBindingImpl.create (ConstructorBindingImpl.java:99)
at com.google.inject.internal.InjectorImpl.createUninitializedBinding (InjectorImpl.java:658)
at com.google.inject.internal.InjectorImpl.createJustInTimeBinding (InjectorImpl.java:882)
at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive (InjectorImpl.java:805)
at com.google.inject.internal.InjectorImpl.getJustInTimeBinding (InjectorImpl.java:282)
at com.google.inject.internal.InjectorImpl.getBindingOrThrow (InjectorImpl.java:214)
at com.google.inject.internal.InjectorImpl.getProviderOrThrow (InjectorImpl.java:1006)
at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1038)
at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1001)
at com.google.inject.internal.InjectorImpl.getInstance (InjectorImpl.java:1051)
at org.eclipse.sisu.space.AbstractDeferredClass.get (AbstractDeferredClass.java:48)
at com.google.inject.internal.ProviderInternalFactory.provision (ProviderInternalFactory.java:81)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision (InternalFactoryToInitializableAdapter.java:53)
at com.google.inject.internal.ProviderInternalFactory$1.call (ProviderInternalFactory.java:65)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:115)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:133)
at com.google.inject.internal.ProvisionListenerStackCallback.provision (ProvisionListenerStackCallback.java:68)
at com.google.inject.internal.ProviderInternalFactory.circularGet (ProviderInternalFactory.java:63)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.get (InternalFactoryToInitializableAdapter.java:45)
at com.google.inject.internal.InjectorImpl$2$1.call (InjectorImpl.java:1016)
at com.google.inject.internal.InjectorImpl.callInContext (InjectorImpl.java:1092)
at com.google.inject.internal.InjectorImpl$2.get (InjectorImpl.java:1012)
at org.eclipse.sisu.inject.Guice4$1.get (Guice4.java:162)
at org.eclipse.sisu.inject.LazyBeanEntry.getValue (LazyBeanEntry.java:81)
at org.eclipse.sisu.plexus.LazyPlexusBean.getValue (LazyPlexusBean.java:51)
at org.codehaus.plexus.DefaultPlexusContainer.lookup (DefaultPlexusContainer.java:263)
at org.codehaus.plexus.DefaultPlexusContainer.lookup (DefaultPlexusContainer.java:255)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo (DefaultMavenPluginManager.java:519)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:121)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass (SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass (ClassRealm.java:271)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:247)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:239)
at java.lang.Class.getDeclaredConstructors0 (Native Method)
at java.lang.Class.privateGetDeclaredConstructors (Class.java:3110)
at java.lang.Class.getDeclaredConstructors (Class.java:2314)
at com.google.inject.spi.InjectionPoint.forConstructorOf (InjectionPoint.java:245)
at com.google.inject.internal.ConstructorBindingImpl.create (ConstructorBindingImpl.java:99)
at com.google.inject.internal.InjectorImpl.createUninitializedBinding (InjectorImpl.java:658)
at com.google.inject.internal.InjectorImpl.createJustInTimeBinding (InjectorImpl.java:882)
at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive (InjectorImpl.java:805)
at com.google.inject.internal.InjectorImpl.getJustInTimeBinding (InjectorImpl.java:282)
at com.google.inject.internal.InjectorImpl.getBindingOrThrow (InjectorImpl.java:214)
at com.google.inject.internal.InjectorImpl.getProviderOrThrow (InjectorImpl.java:1006)
at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1038)
at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1001)
at com.google.inject.internal.InjectorImpl.getInstance (InjectorImpl.java:1051)
at org.eclipse.sisu.space.AbstractDeferredClass.get (AbstractDeferredClass.java:48)
at com.google.inject.internal.ProviderInternalFactory.provision (ProviderInternalFactory.java:81)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision (InternalFactoryToInitializableAdapter.java:53)
at com.google.inject.internal.ProviderInternalFactory$1.call (ProviderInternalFactory.java:65)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:115)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:133)
at com.google.inject.internal.ProvisionListenerStackCallback.provision (ProvisionListenerStackCallback.java:68)
at com.google.inject.internal.ProviderInternalFactory.circularGet (ProviderInternalFactory.java:63)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.get (InternalFactoryToInitializableAdapter.java:45)
at com.google.inject.internal.InjectorImpl$2$1.call (InjectorImpl.java:1016)
at com.google.inject.internal.InjectorImpl.callInContext (InjectorImpl.java:1092)
at com.google.inject.internal.InjectorImpl$2.get (InjectorImpl.java:1012)
at org.eclipse.sisu.inject.Guice4$1.get (Guice4.java:162)
at org.eclipse.sisu.inject.LazyBeanEntry.getValue (LazyBeanEntry.java:81)
at org.eclipse.sisu.plexus.LazyPlexusBean.getValue (LazyPlexusBean.java:51)
at org.codehaus.plexus.DefaultPlexusContainer.lookup (DefaultPlexusContainer.java:263)
at org.codehaus.plexus.DefaultPlexusContainer.lookup (DefaultPlexusContainer.java:255)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo (DefaultMavenPluginManager.java:519)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:121)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginContainerException

System Property Variables not being picked up

Hi

No matter what I do, when doing mvn test I always get:

'The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://chromedriver.storage.googleapis.com/index.html'

I even went to the extent of having my test do

System.out.println("TEST: " + System.getProperty("webdriver.chrome.driver");

This just spits out "TEST: null" when ran.

This even happens with your exact pom file

Running Maven 3.3.3

Cannot run with more than 1 thread

Hello,

I execute the following steps on a Windows 10 64-bit host:

  1. Open a terminal window/command prompt
  2. Clone this project
  3. cd Selenium-Maven-Template (Or whatever folder you cloned it into)

Then I execute:
mvn clean verify -Dthreads=2
There are two Firefox windows, but the two tests are executed in the first one (the search is for "CheeseMilk"), and the results are:

[INFO] Results:
[INFO]
[ERROR] Failures:
[ERROR]   GoogleExampleIT.googleCheeseExample:37 ? Timeout Expected condition failed: wa...
[ERROR]   GoogleExampleIT.googleMilkExample:69 ? Timeout Expected condition failed: wait...
[INFO]
[ERROR] Tests run: 2, Failures: 2, Errors: 0, Skipped: 0    

I tried the steps in the "It's not working!!!" section, but the result is the same.
I am using the latest version of Firefox 59.0.1 (64-bit) and Windows 10 with the latest updates.
I tried the same in the latest Chrome version 65.0.3325.162 (Official Build) (64-bit), but the results are the same.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.