You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ma...@apache.org on 2017/06/08 05:02:55 UTC

[2/4] archiva git commit: Updating tests for WebDriver and jetty backend

Updating tests for WebDriver and jetty backend


Project: http://git-wip-us.apache.org/repos/asf/archiva/repo
Commit: http://git-wip-us.apache.org/repos/asf/archiva/commit/69c6b594
Tree: http://git-wip-us.apache.org/repos/asf/archiva/tree/69c6b594
Diff: http://git-wip-us.apache.org/repos/asf/archiva/diff/69c6b594

Branch: refs/heads/master
Commit: 69c6b594b1bc761527157b3a8970d6e64e582ea9
Parents: 0bbedd7
Author: Martin Stockhammer <ma...@apache.org>
Authored: Mon Jun 5 22:31:48 2017 +0200
Committer: Martin Stockhammer <ma...@apache.org>
Committed: Mon Jun 5 22:31:48 2017 +0200

----------------------------------------------------------------------
 .../archiva-web/archiva-webapp-test/pom.xml     | 267 +++++++++++++++----
 .../archiva/web/test/WebDriverBrowseTest.java   |  72 +++--
 .../apache/archiva/web/test/WebDriverTest.java  |  52 ++--
 .../web/test/parent/AbstractSeleniumTest.java   |  18 +-
 .../web/test/tools/WebdriverInitializer.java    | 118 --------
 .../web/test/tools/WebdriverUtility.java        | 204 ++++++++++++++
 .../src/test/resources/log4j.xml                |  41 ---
 .../src/test/resources/log4j2-test.xml          |   3 +-
 .../src/test/resources/logging/log4j.xml        |  70 -----
 .../src/test/resources/logging/log4j2-test.xml  |   4 +-
 10 files changed, 473 insertions(+), 376 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/pom.xml
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/pom.xml b/archiva-modules/archiva-web/archiva-webapp-test/pom.xml
index ad2b77f..db11a19 100644
--- a/archiva-modules/archiva-web/archiva-webapp-test/pom.xml
+++ b/archiva-modules/archiva-web/archiva-webapp-test/pom.xml
@@ -30,14 +30,14 @@
   <name>Archiva Web :: Javascript Application Tests</name>
 
   <properties>
-    <webappDirectory>${project.build.directory}/tomcat7x/webapps/archiva</webappDirectory>
-    <container.test.port>0</container.test.port>
-    <tomcat.propertiesPortFilePath>${project.build.directory}/tomcat-port.properties</tomcat.propertiesPortFilePath>
+    <webappDirectory>${project.build.directory}/container/webapps/archiva</webappDirectory>
+    <container.propertiesPortFilePath>${project.build.directory}/container-port.properties</container.propertiesPortFilePath>
     <maxWaitTimeInMs>10000</maxWaitTimeInMs>
-
     <selenium-server.version>3.4.0</selenium-server.version>
     <fluentlenium.version>3.2.0</fluentlenium.version>
     <fluentlenium.festassert.version>0.13.2</fluentlenium.festassert.version>
+    <seleniumHost></seleniumHost>
+    <seleniumPort></seleniumPort>
 
     <browserPath></browserPath>
   </properties>
@@ -67,6 +67,8 @@
         </exclusion>
       </exclusions>
     </dependency>
+
+    <!-- Selenium dependencies -->
     <dependency>
       <groupId>org.seleniumhq.selenium</groupId>
       <artifactId>selenium-java</artifactId>
@@ -81,39 +83,29 @@
           <groupId>javax.servlet</groupId>
           <artifactId>javax.servlet-api</artifactId>
         </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.seleniumhq.selenium.client-drivers</groupId>
-      <artifactId>selenium-java-client-driver</artifactId>
-      <scope>test</scope>
-      <exclusions>
         <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
+          <groupId>org.eclipse.jetty</groupId>
+          <artifactId>jetty-io</artifactId>
         </exclusion>
         <exclusion>
-          <groupId>javax.servlet</groupId>
-          <artifactId>javax.servlet-api</artifactId>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-client</artifactId>
         </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.seleniumhq.selenium</groupId>
-      <artifactId>selenium-remote-driver</artifactId>
-      <scope>test</scope>
-      <version>${selenium-server.version}</version>
-      <exclusions>
         <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
+          <groupId>org.eclipse.jetty</groupId>
+          <artifactId>jetty-util</artifactId>
         </exclusion>
         <exclusion>
-          <groupId>javax.servlet</groupId>
-          <artifactId>javax.servlet-api</artifactId>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-api</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-common</artifactId>
         </exclusion>
       </exclusions>
     </dependency>
+
     <dependency>
       <groupId>org.seleniumhq.selenium</groupId>
       <artifactId>selenium-leg-rc</artifactId>
@@ -125,21 +117,37 @@
           <artifactId>testng</artifactId>
         </exclusion>
         <exclusion>
+          <groupId>commons-logging</groupId>
+          <artifactId>commons-logging</artifactId>
+        </exclusion>
+        <exclusion>
           <groupId>javax.servlet</groupId>
           <artifactId>javax.servlet-api</artifactId>
         </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty</groupId>
+          <artifactId>jetty-io</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-client</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty</groupId>
+          <artifactId>jetty-util</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-api</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-common</artifactId>
+        </exclusion>
       </exclusions>
     </dependency>
-    <dependency>
-      <groupId>org.apache.commons</groupId>
-      <artifactId>commons-exec</artifactId>
-      <version>1.3</version>
-    </dependency>
-    <dependency>
-      <groupId>org.seleniumhq.selenium</groupId>
-      <artifactId>htmlunit-driver</artifactId>
-      <version>2.26</version>
-    </dependency>
+
+
 
     <dependency>
       <groupId>org.seleniumhq.selenium</groupId>
@@ -155,6 +163,26 @@
           <groupId>javax.servlet</groupId>
           <artifactId>javax.servlet-api</artifactId>
         </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty</groupId>
+          <artifactId>jetty-io</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty</groupId>
+          <artifactId>jetty-util</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-client</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-api</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.eclipse.jetty.websocket</groupId>
+          <artifactId>websocket-common</artifactId>
+        </exclusion>
       </exclusions>
     </dependency>
 
@@ -179,6 +207,8 @@
       <scope>test</scope>
     </dependency>
 
+    <!-- End of Selenium dependencies -->
+
     <dependency>
       <groupId>xerces</groupId>
       <artifactId>xercesImpl</artifactId>
@@ -233,9 +263,36 @@
       <artifactId>log4j-1.2-api</artifactId>
     </dependency>
 
+
+    <dependency>
+      <groupId>org.eclipse.jetty</groupId>
+      <artifactId>jetty-io</artifactId>
+      <version>${jettyVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.jetty</groupId>
+      <artifactId>jetty-util</artifactId>
+      <version>${jettyVersion}</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.jetty.websocket</groupId>
+      <artifactId>websocket-api</artifactId>
+      <version>${jettyVersion}</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.jetty.websocket</groupId>
+      <artifactId>websocket-client</artifactId>
+      <version>${jettyVersion}</version>
+      <scope>test</scope>
+    </dependency>
+
+
   </dependencies>
 
   <build>
+
     <testResources>
       <testResource>
         <directory>src/test/resources</directory>
@@ -264,6 +321,27 @@
       </plugins>
     </pluginManagement>
     <plugins>
+
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
+        <configuration>
+          <portNames>
+            <portName>container.http.port</portName>
+            <portName>container.stop.port</portName>
+          </portNames>
+        </configuration>
+        <executions>
+          <execution>
+            <id>reserve-port</id>
+            <phase>pre-integration-test</phase>
+            <goals>
+              <goal>reserve-network-port</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+
       <plugin>
         <artifactId>maven-resources-plugin</artifactId>
         <executions>
@@ -288,17 +366,19 @@
 
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-surefire-plugin</artifactId>
+        <artifactId>maven-failsafe-plugin</artifactId>
         <configuration>
           <redirectTestOutputToFile>false</redirectTestOutputToFile>
           <runOrder>alphabetical</runOrder>
+          <includes>
+            <include>**/*Test.java</include>
+          </includes>
         </configuration>
         <executions>
           <execution>
             <id>integration-tests</id>
-            <phase>integration-test</phase>
             <goals>
-              <goal>test</goal>
+              <goal>integration-test</goal>
             </goals>
             <configuration>
               <systemPropertyVariables>
@@ -308,11 +388,19 @@
                 <maxWaitTimeInMs>${maxWaitTimeInMs}</maxWaitTimeInMs>
                 <seleniumHost>${seleniumHost}</seleniumHost>
                 <seleniumPort>${seleniumPort}</seleniumPort>
-                <seleniumRemote>${seleniumRemote}</seleniumRemote>
-                <tomcat.propertiesPortFilePath>${tomcat.propertiesPortFilePath}</tomcat.propertiesPortFilePath>
+                <container.propertiesPortFilePath>${container.propertiesPortFilePath}</container.propertiesPortFilePath>
+                <container.http.port>${container.http.port}</container.http.port>
               </systemPropertyVariables>
             </configuration>
+
           </execution>
+          <execution>
+            <id>verify</id>
+            <goals>
+              <goal>verify</goal>
+            </goals>
+          </execution>
+
         </executions>
       </plugin>
     </plugins>
@@ -402,7 +490,82 @@
               </execution>
             </executions>
           </plugin>
+
+
           <plugin>
+            <groupId>org.eclipse.jetty</groupId>
+            <artifactId>jetty-maven-plugin</artifactId>
+            <version>9.4.5.v20170502</version>
+            <configuration>
+              <stopKey>archivastop</stopKey>
+              <stopPort>${container.stop.port}</stopPort>
+              <stopWait>30</stopWait>
+              <httpConnector>
+                <port>${container.http.port}</port>
+              </httpConnector>
+            </configuration>
+            <dependencies>
+              <dependency>
+                <groupId>org.apache.derby</groupId>
+                <artifactId>derby</artifactId>
+                <version>${derbyVersion}</version>
+              </dependency>
+              <dependency>
+                <groupId>javax.mail</groupId>
+                <artifactId>mail</artifactId>
+                <version>${javaxMailVersion}</version>
+              </dependency>
+
+            </dependencies>
+            <executions>
+              <execution>
+                <id>jetty-run</id>
+                <goals>
+                  <goal>deploy-war</goal>
+                </goals>
+                <phase>pre-integration-test</phase>
+                <configuration>
+                  <daemon>true</daemon>
+                  <webApp>
+                    <contextPath>/archiva</contextPath>
+                    <jettyEnvXml>${project.build.testOutputDirectory}/jetty/jetty-env.xml</jettyEnvXml>
+                  </webApp>
+                  <war>${webappDirectory}</war>
+                  <systemProperties>
+                    <systemProperty>
+                      <name>appserver.base</name>
+                      <value>${project.build.directory}/appserver-base</value>
+                    </systemProperty>
+                    <systemProperty>
+                      <name>appserver.home</name>
+                      <value>${project.build.directory}/appserver-base</value>
+                    </systemProperty>
+                    <systemProperty>
+                      <name>derby.system.home</name>
+                      <value>${project.build.directory}</value>
+                    </systemProperty>
+                    <systemProperty>
+                      <name>archiva.devMode</name>
+                      <value>true</value>
+                    </systemProperty>
+                    <systemProperty>
+                      <name>openjpa.Log</name>
+                      <value>${openjpa.Log}</value>
+                    </systemProperty>
+                  </systemProperties>
+                </configuration>
+              </execution>
+              <execution>
+                <id>jetty-shutdown</id>
+                <goals>
+                  <goal>stop</goal>
+                </goals>
+                <phase>post-integration-test</phase>
+              </execution>
+            </executions>
+          </plugin>
+
+<!--          <plugin>
             <groupId>org.apache.tomcat.maven</groupId>
             <artifactId>tomcat7-maven-plugin</artifactId>
             <dependencies>
@@ -426,7 +589,7 @@
                 <phase>pre-integration-test</phase>
                 <configuration>
                   <path>/archiva</path>
-                  <port>${container.test.port}</port>
+                  <port>${container.http.port}</port>
                   <uriEncoding>UTF-8</uriEncoding>
                   <warDirectory>${webappDirectory}</warDirectory>
                   <fork>true</fork>
@@ -439,7 +602,7 @@
                     <openjpa.Log>${openjpa.Log}</openjpa.Log>
                   </systemProperties>
                   <contextFile>${project.build.testOutputDirectory}/archiva.xml</contextFile>
-                  <propertiesPortFilePath>${tomcat.propertiesPortFilePath}</propertiesPortFilePath>
+                  <propertiesPortFilePath>${container.propertiesPortFilePath}</propertiesPortFilePath>
                   <useNaming>true</useNaming>
                 </configuration>
               </execution>
@@ -451,7 +614,7 @@
                 <phase>post-integration-test</phase>
               </execution>
             </executions>
-          </plugin>
+          </plugin>-->
         </plugins>
       </build>
     </profile>
@@ -463,20 +626,10 @@
         </property>
       </activation>
       <properties>
-        <baseUrl>http://localhost:${container.test.port}/archiva/index.html?request_lang=en</baseUrl>
-      </properties>
-    </profile>
-    <profile>
-      <id>start-selenium</id>
-      <activation>
-        <property>
-          <name>!seleniumHost</name>
-        </property>
-      </activation>
-      <properties>
-        <seleniumRemote>false</seleniumRemote>
+        <baseUrl>http://localhost:${container.http.port}/archiva</baseUrl>
       </properties>
     </profile>
+
     <profile>
       <id>htmlunit</id>
       <activation>

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java
index 7f83b34..6838cc2 100644
--- a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java
+++ b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java
@@ -18,10 +18,11 @@ package org.apache.archiva.web.test;
  * under the License.
  */
 
-import junit.framework.Assert;
-import org.apache.archiva.web.test.tools.WebdriverInitializer;
+import org.fluentlenium.configuration.ConfigurationProperties;
+import org.fluentlenium.configuration.FluentConfiguration;
+import org.junit.Assert;
+import org.apache.archiva.web.test.tools.WebdriverUtility;
 import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang3.StringUtils;
 import org.fluentlenium.adapter.junit.FluentTest;
 import org.fluentlenium.core.domain.FluentList;
 import org.fluentlenium.core.domain.FluentWebElement;
@@ -29,11 +30,16 @@ import org.junit.Before;
 import org.junit.Test;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
 
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.util.Properties;
 import java.util.concurrent.TimeUnit;
 
@@ -42,90 +48,75 @@ import static org.assertj.core.api.Assertions.assertThat;
 /**
  * @author Olivier Lamy
  */
+@FluentConfiguration(driverLifecycle = ConfigurationProperties.DriverLifecycle.CLASS)
 public class WebDriverBrowseTest
-        extends FluentTest
+    extends FluentTest
 {
 
+    final Logger log = LoggerFactory.getLogger( WebDriverBrowseTest.class );
+
     @Override
     public void takeScreenShot( String fileName )
     {
-        File fileNameHTML = new File( "target", "errorshtmlsnap" );
-        try
-        {
-            // save html to have a minimum feedback if jenkins firefox not up
-            fileNameHTML = new File( fileNameHTML, fileName );
-            FileUtils.writeStringToFile( new File ( new File( "target", "errorshtmlsnap" ) , fileName + ".html"), getDriver().getPageSource() );
-
-        }
-        catch ( IOException e )
-        {
-            e.printStackTrace();
-        }
-        super.takeScreenShot( fileNameHTML.getAbsolutePath() );
-
+        WebdriverUtility.takeScreenShot( fileName, getDriver(), (a)->super.takeScreenShot( a ) );
     }
 
     @Before
     public void init()
     {
 
-        setScreenshotMode( TriggerMode.AUTOMATIC_ON_FAIL);
+        setScreenshotMode( TriggerMode.AUTOMATIC_ON_FAIL );
         setDriverLifecycle( DriverLifecycle.CLASS );
 
     }
 
     @Test
     public void simpletest()
-            throws Exception
+        throws Exception
     {
         Properties p = new Properties();
         p.load( this.getClass().getClassLoader().getResourceAsStream( "test.properties" ) );
 
-        Properties tomcatPortProperties = new Properties();
-        tomcatPortProperties.load(
-                new FileInputStream( new File( System.getProperty( "tomcat.propertiesPortFilePath" ) ) ) );
-
-        int tomcatPort = Integer.parseInt( tomcatPortProperties.getProperty( "tomcat.maven.http.port" ) );
-
-        goTo( "http://localhost:" + tomcatPort + "/archiva/index.html?request_lang=en" );
+        String baseUrl = WebdriverUtility.getBaseUrl();
+        String url = baseUrl + "/index.html?request_lang=en";
+        goTo( url );
 
         // wait until topbar-menu-container is feeded
-        await().atMost( 5, TimeUnit.SECONDS ).until( $("#topbar-menu" )).present();
+        await().atMost( 5, TimeUnit.SECONDS ).untilPredicate( ( fl ) -> $( "#topbar-menu" ).present() );
 
         FluentList<FluentWebElement> elements = find( "#create-admin-link-a" );
-
         if ( !elements.isEmpty() && elements.get( 0 ).displayed() )
         {
             WebElement webElement = elements.get( 0 ).getElement();
             Assert.assertEquals( "Create Admin User", webElement.getText() );
 
             webElement.click();
-            await().atMost( 2, TimeUnit.SECONDS ).until($( "#user-create" )).present();
+            await().atMost( 2, TimeUnit.SECONDS ).untilPredicate( ( fl ) -> $( "#user-create" ).present() );
             assertThat( find( "#username" ).value().equals( "admin" ) );
             assertThat( find( "#password" ).value().isEmpty() );
             assertThat( find( "#confirmPassword" ).value().isEmpty() );
             assertThat( find( "#email" ).value().isEmpty() );
 
-            $("#fullname").fill().with( p.getProperty( "ADMIN_FULLNAME" ) );
-            $("#email").fill().with( p.getProperty( "ADMIN_EMAIL" ) );
-            $("#password").fill().with( p.getProperty( "ADMIN_PASSWORD" ) );
-            $("#confirmPassword").fill().with( p.getProperty( "ADMIN_PASSWORD" ) );
+            $( "#fullname" ).fill().with( p.getProperty( "ADMIN_FULLNAME" ) );
+            $( "#email" ).fill().with( p.getProperty( "ADMIN_EMAIL" ) );
+            $( "#password" ).fill().with( p.getProperty( "ADMIN_PASSWORD" ) );
+            $( "#confirmPassword" ).fill().with( p.getProperty( "ADMIN_PASSWORD" ) );
             find( "#user-create-form-register-button" ).click();
 
-            await().atMost( 2, TimeUnit.SECONDS ).until($("#logout-link" )).present();
+            await().atMost( 2, TimeUnit.SECONDS ).untilPredicate( ( fl ) -> $( "#logout-link" ).present() );
 
             FluentList<FluentWebElement> elementss = find( "#menu-find-browse-a" );
             WebElement webElsement = elementss.get( 0 ).getElement();
             webElsement.click();
-            await().atMost( 2, TimeUnit.SECONDS ).until($("#main_browse_result" )).present();
+            await().atMost( 5, TimeUnit.SECONDS ).untilPredicate( ( fl ) -> $( "#main_browse_result" ).present() );
             // give me search page :( not  browse page
 
             takeScreenShot( "search.png" );
 
-            goTo( "http://localhost:" + tomcatPort + "/archiva/index.html#browse?request_lang=en" );
+            goTo( baseUrl + "/index.html#browse?request_lang=en" );
             takeScreenShot( "browse.png" );
             // give me a browse page
-            
+
         }
         else
         {
@@ -137,7 +128,8 @@ public class WebDriverBrowseTest
     }
 
     @Override
-    public WebDriver newWebDriver() {
-        return WebdriverInitializer.newWebDriver();
+    public WebDriver newWebDriver()
+    {
+        return WebdriverUtility.newWebDriver();
     }
 }

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java
index 5a020e2..c2980e9 100644
--- a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java
+++ b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java
@@ -18,53 +18,41 @@ package org.apache.archiva.web.test;
  * under the License.
  */
 
-import junit.framework.Assert;
-import org.apache.archiva.web.test.tools.WebdriverInitializer;
+import org.junit.Assert;
+import org.apache.archiva.web.test.tools.WebdriverUtility;
 import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang3.StringUtils;
 import org.fluentlenium.adapter.junit.FluentTest;
+import org.fluentlenium.configuration.ConfigurationProperties;
+import org.fluentlenium.configuration.FluentConfiguration;
 import org.fluentlenium.core.domain.FluentList;
 import org.fluentlenium.core.domain.FluentWebElement;
 import org.junit.Before;
 import org.junit.Test;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
-import org.openqa.selenium.chrome.ChromeDriver;
-import org.openqa.selenium.firefox.FirefoxDriver;
-import org.openqa.selenium.ie.InternetExplorerDriver;
-import org.openqa.selenium.remote.DesiredCapabilities;
-import org.openqa.selenium.remote.RemoteWebDriver;
-import org.openqa.selenium.safari.SafariDriver;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.File;
-import java.io.FileInputStream;
 import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
+import java.nio.file.Files;
+import java.nio.file.Path;
 import java.nio.file.Paths;
-import java.util.Properties;
-import java.util.concurrent.TimeUnit;
 
 /**
  * @author Olivier Lamy
  */
+@FluentConfiguration(driverLifecycle = ConfigurationProperties.DriverLifecycle.CLASS)
 public class WebDriverTest
         extends FluentTest
 {
 
-
+    final Logger log = LoggerFactory.getLogger( WebDriver.class );
 
     @Override
-    public void takeScreenShot(String fileName) {
-        try {
-            // save html to have a minimum feedback if jenkins firefox not up
-            File fileNameHTML = new File(fileName + ".html");
-            FileUtils.writeStringToFile(fileNameHTML, getDriver().getPageSource());
-        } catch (IOException e) {
-            System.out.print(e.getMessage());
-            e.printStackTrace();
-        }
-        super.takeScreenShot(fileName);
+    public void takeScreenShot( String fileName )
+    {
+        WebdriverUtility.takeScreenShot( fileName, getDriver(), (a)->super.takeScreenShot( a ) );
     }
 
 
@@ -79,18 +67,12 @@ public class WebDriverTest
     public void simpletest()
             throws Exception {
 
-        Properties tomcatPortProperties = new Properties();
-        tomcatPortProperties.load(
-                new FileInputStream(new File(System.getProperty("tomcat.propertiesPortFilePath"))));
-
-        int tomcatPort = Integer.parseInt(tomcatPortProperties.getProperty("tomcat.maven.http.port"));
-        String url = "http://localhost:" + tomcatPort + "/archiva/index.html?request_lang=en";
-        System.err.println("URL: "+url);
+        String url = WebdriverUtility.getBaseUrl()+ "/index.html?request_lang=en";
         goTo(url);
 
         // wait until topbar-menu-container is feeded
-        await().atMost(10, TimeUnit.SECONDS).until($("#topbar-menu")).present();
-
+        //await().atMost(20, TimeUnit.SECONDS).until($("#topbar-menu")).present();
+        await().untilPredicate((fl) ->$("#topbar-menu").present());
         FluentList<FluentWebElement> elements = find("#create-admin-link-a");
 
         if (!elements.isEmpty() && elements.get(0).displayed()) {
@@ -106,6 +88,6 @@ public class WebDriverTest
 
     @Override
     public WebDriver newWebDriver() {
-        return WebdriverInitializer.newWebDriver();
+        return WebdriverUtility.newWebDriver();
     }
 }

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/parent/AbstractSeleniumTest.java
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/parent/AbstractSeleniumTest.java b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/parent/AbstractSeleniumTest.java
index a8403cd..daec10b 100644
--- a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/parent/AbstractSeleniumTest.java
+++ b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/parent/AbstractSeleniumTest.java
@@ -19,12 +19,11 @@ package org.apache.archiva.web.test.parent;
  * under the License.
  */
 
-import com.thoughtworks.selenium.DefaultSelenium;
 import com.thoughtworks.selenium.Selenium;
+//import com.thoughtworks.selenium.webdriven.WebDriverBackedSelenium;
 import com.thoughtworks.selenium.webdriven.WebDriverBackedSelenium;
 import org.apache.archiva.web.test.tools.ArchivaSeleniumExecutionRule;
-import org.apache.archiva.web.test.tools.WebdriverInitializer;
-import org.apache.xpath.operations.Bool;
+import org.apache.archiva.web.test.tools.WebdriverUtility;
 import org.junit.Assert;
 import org.junit.Rule;
 
@@ -84,13 +83,7 @@ public abstract class AbstractSeleniumTest
         p = new Properties();
         p.load( this.getClass().getClassLoader().getResourceAsStream( "test.properties" ) );
 
-        Properties tomcatPortProperties = new Properties();
-        tomcatPortProperties.load(
-            new FileInputStream( new File( System.getProperty( "tomcat.propertiesPortFilePath" ) ) ) );
-
-        int tomcatPort = Integer.parseInt( tomcatPortProperties.getProperty( "tomcat.maven.http.port" ) );
-
-        baseUrl = "http://localhost:" + tomcatPort + "/archiva/index.html?request_lang=en";
+        baseUrl = WebdriverUtility.getBaseUrl()+"/index.html?request_lang=en";
 
         open( baseUrl, browser, seleniumHost, seleniumPort, maxWaitTimeInMs, remoteSelenium );
         archivaSeleniumExecutionRule.selenium = selenium;
@@ -118,8 +111,9 @@ public abstract class AbstractSeleniumTest
         {
             if ( getSelenium() == null )
             {
-                WebDriver driver = WebdriverInitializer.newWebDriver(browser, seleniumHost, seleniumPort, remoteSelenium);
-                selenium = new WebDriverBackedSelenium(driver, baseUrl);
+                WebDriver driver = WebdriverUtility.newWebDriver(browser, seleniumHost, seleniumPort, remoteSelenium);
+                WebDriverBackedSelenium selenium = new WebDriverBackedSelenium(driver, baseUrl);
+                selenium.getWrappedDriver();
                 selenium.start();
                 selenium.setTimeout( Integer.toString( maxWaitTimeInMs ) );
             }

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/tools/WebdriverInitializer.java
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/tools/WebdriverInitializer.java b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/tools/WebdriverInitializer.java
deleted file mode 100644
index c3ddc1a..0000000
--- a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/tools/WebdriverInitializer.java
+++ /dev/null
@@ -1,118 +0,0 @@
-package org.apache.archiva.web.test.tools;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.apache.commons.lang3.StringUtils;
-import org.openqa.selenium.Capabilities;
-import org.openqa.selenium.WebDriver;
-import org.openqa.selenium.chrome.ChromeDriver;
-import org.openqa.selenium.firefox.FirefoxDriver;
-import org.openqa.selenium.htmlunit.HtmlUnitDriver;
-import org.openqa.selenium.ie.InternetExplorerDriver;
-import org.openqa.selenium.remote.DesiredCapabilities;
-import org.openqa.selenium.remote.RemoteWebDriver;
-import org.openqa.selenium.safari.SafariDriver;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-/**
- * Created by martin_s on 04.06.17.
- */
-public class WebdriverInitializer
-{
-
-    public static WebDriver newWebDriver() {
-        String seleniumBrowser = System.getProperty("selenium.browser");
-        String seleniumHost = System.getProperty("seleniumHost", "localhost");
-        int seleniumPort = Integer.getInteger("seleniumPort", 4444);
-        boolean seleniumRemote = Boolean.parseBoolean(System.getProperty("seleniumRemote","false"));
-        return newWebDriver(seleniumBrowser,seleniumHost, seleniumPort,seleniumRemote);
-    }
-
-    public static WebDriver newWebDriver(String seleniumBrowser, String seleniumHost, int seleniumPort, boolean seleniumRemote) {
-        try {
-
-            if ( StringUtils.contains(seleniumBrowser, "chrome")) {
-                if (seleniumRemote)
-                {
-                    return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
-                        DesiredCapabilities.chrome()
-                    );
-                } else {
-                    return new ChromeDriver(  );
-                }
-            }
-
-            if (StringUtils.contains(seleniumBrowser, "safari")) {
-                if (seleniumRemote)
-                {
-                    return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
-                        DesiredCapabilities.safari()
-                    );
-                } else {
-                    return new SafariDriver();
-                }
-            }
-
-            if (StringUtils.contains(seleniumBrowser, "iexplore")) {
-                if (seleniumRemote)
-                {
-                    return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
-                        DesiredCapabilities.internetExplorer()
-                    );
-                } else {
-                    new InternetExplorerDriver(  );
-                }
-            }
-
-            if (StringUtils.contains( seleniumBrowser, "firefox" ))
-            {
-                if ( seleniumRemote )
-                {
-                    return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
-                        DesiredCapabilities.firefox()
-                    );
-                }
-                else
-                {
-                    return new FirefoxDriver();
-                }
-            }
-
-            if ( seleniumRemote )
-            {
-                return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
-                    DesiredCapabilities.htmlUnit()
-                );
-            }
-            else
-            {
-                DesiredCapabilities capabilities = DesiredCapabilities.htmlUnit();
-                capabilities.setJavascriptEnabled( true );
-                capabilities.setVersion( "firefox-51" );
-                return new HtmlUnitDriver( capabilities  );
-            }
-
-        } catch (MalformedURLException e) {
-            throw new RuntimeException("Initializion of remote driver failed");
-        }
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/tools/WebdriverUtility.java
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/tools/WebdriverUtility.java b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/tools/WebdriverUtility.java
new file mode 100644
index 0000000..0011dc6
--- /dev/null
+++ b/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/tools/WebdriverUtility.java
@@ -0,0 +1,204 @@
+package org.apache.archiva.web.test.tools;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.openqa.selenium.Capabilities;
+import org.openqa.selenium.JavascriptExecutor;
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.chrome.ChromeDriver;
+import org.openqa.selenium.firefox.FirefoxDriver;
+import org.openqa.selenium.htmlunit.HtmlUnitDriver;
+import org.openqa.selenium.ie.InternetExplorerDriver;
+import org.openqa.selenium.remote.DesiredCapabilities;
+import org.openqa.selenium.remote.RemoteWebDriver;
+import org.openqa.selenium.safari.SafariDriver;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Properties;
+import java.util.function.Consumer;
+import java.util.function.Function;
+
+/**
+ * Created by martin_s on 04.06.17.
+ */
+public class WebdriverUtility
+{
+
+    static final Logger log = LoggerFactory.getLogger( WebdriverUtility.class );
+
+    public static WebDriver newWebDriver() {
+        String seleniumBrowser = System.getProperty("selenium.browser");
+        String seleniumHost = System.getProperty("seleniumHost", "localhost");
+        int seleniumPort = Integer.getInteger("seleniumPort", 4444);
+        boolean seleniumRemote = Boolean.parseBoolean(System.getProperty("seleniumRemote","false"));
+        return newWebDriver(seleniumBrowser,seleniumHost, seleniumPort,seleniumRemote);
+    }
+
+    public static WebDriver newWebDriver(String seleniumBrowser, String seleniumHost, int seleniumPort, boolean seleniumRemote) {
+        try {
+
+            if ( StringUtils.contains(seleniumBrowser, "chrome")) {
+                if (seleniumRemote)
+                {
+                    return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
+                        DesiredCapabilities.chrome()
+                    );
+                } else {
+                    return new ChromeDriver(  );
+                }
+            }
+
+            if (StringUtils.contains(seleniumBrowser, "safari")) {
+                if (seleniumRemote)
+                {
+                    return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
+                        DesiredCapabilities.safari()
+                    );
+                } else {
+                    return new SafariDriver();
+                }
+            }
+
+            if (StringUtils.contains(seleniumBrowser, "iexplore")) {
+                if (seleniumRemote)
+                {
+                    return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
+                        DesiredCapabilities.internetExplorer()
+                    );
+                } else {
+                    new InternetExplorerDriver(  );
+                }
+            }
+
+            if (StringUtils.contains( seleniumBrowser, "firefox" ))
+            {
+                if ( seleniumRemote )
+                {
+                    return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
+                        DesiredCapabilities.firefox()
+                    );
+                }
+                else
+                {
+                    return new FirefoxDriver();
+                }
+            }
+
+            if ( seleniumRemote )
+            {
+                return new RemoteWebDriver( new URL( "http://" + seleniumHost + ":" + seleniumPort + "/wd/hub" ),
+                    DesiredCapabilities.htmlUnit()
+                );
+            }
+            else
+            {
+                DesiredCapabilities capabilities = DesiredCapabilities.htmlUnit();
+                capabilities.setJavascriptEnabled( true );
+                capabilities.setVersion( "firefox-51" );
+                return new HtmlUnitDriver( capabilities  );
+            }
+
+        } catch (MalformedURLException e) {
+            throw new RuntimeException("Initializion of remote driver failed");
+        }
+
+    }
+
+    public static String getBaseUrl() {
+
+        if (System.getProperties().containsKey( "baseUrl" )) {
+            return System.getProperty("baseUrl");
+        }
+        int containerPort = 7777;
+        if (System.getProperties().containsKey("container.http.port")) {
+            containerPort = Integer.parseInt(System.getProperty("container.http.port"));
+        } else if (System.getProperties().containsKey("container.propertiesPortFilePath"))
+        {
+            Properties portProperties = new Properties();
+            try (InputStream inputStream = Files.newInputStream(Paths.get(System.getProperty("container.propertiesPortFilePath"))))
+            {
+                portProperties.load(inputStream);
+            }
+            catch ( IOException e )
+            {
+                log.error("Error during property loading with containger.propertiesPortFilePath");
+            }
+            if ( portProperties.containsKey( "tomcat.maven.http.port" ) )
+            {
+                containerPort = Integer.parseInt( portProperties.getProperty( "tomcat.maven.http.port" ) );
+            }
+            else
+            {
+                containerPort = Integer.parseInt( portProperties.getProperty( "container.http.port" ) );
+            }
+        }
+        return "http://localhost:" + containerPort+"/archiva";
+    }
+
+    public static void takeScreenShot( String fileName, WebDriver driver, Consumer<String> screenShotFunction) {
+        try
+        {
+            Path snapDir = Paths.get( "target", "errorshtmlsnap" );
+            if ( !Files.exists( snapDir ) )
+            {
+                Files.createDirectories( snapDir );
+            }
+            Path htmlFile = snapDir.resolve( fileName + ".html" );
+            Path screenShotFile = snapDir.resolve( fileName );
+            String pageSource=null;
+            String encoding="ISO-8859-1";
+            try
+            {
+                pageSource = ( (JavascriptExecutor) driver ).executeScript( "return document.documentElement.outerHTML;" ).toString();
+            } catch (Exception e) {
+                log.info("Could not create html source by javascript");
+                pageSource = driver.getPageSource();
+            }
+            if (pageSource.contains("encoding=\"")) {
+                encoding = pageSource.replaceFirst( ".*encoding=\"([^\"]+)\".*", "$1" );
+            }
+            FileUtils.writeStringToFile( htmlFile.toFile(), pageSource, encoding);
+            try
+            {
+                screenShotFunction.accept( screenShotFile.toAbsolutePath().toString() );
+            }
+            catch ( Exception e )
+            {
+                log.info( "Could not create screenshot: " + e.getMessage() );
+            }
+
+        }
+        catch ( IOException e )
+        {
+            log.info( "Creating screenshot failed " + e.getMessage() );
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j.xml
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j.xml b/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j.xml
deleted file mode 100644
index 4957e2d..0000000
--- a/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~ with the License.  You may obtain a copy of the License at
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
-<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
-
-<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
-
-  <appender name="console" class="org.apache.log4j.ConsoleAppender">
-    <layout class="org.apache.log4j.PatternLayout">
-      <param name="ConversionPattern" value="%d [%t] %-5p %c %x - %m%n"/>
-    </layout>
-  </appender>
-
-
-  <logger name="org.springframework">
-    <level value="ERROR"/>
-  </logger>
-
-  <root>
-    <priority value ="info" />
-    <appender-ref ref="console" />
-  </root>
-
-</log4j:configuration>

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j2-test.xml
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j2-test.xml b/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j2-test.xml
index dec6d75..61f9f01 100644
--- a/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j2-test.xml
+++ b/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/log4j2-test.xml
@@ -19,7 +19,7 @@
   -->
 
 
-<configuration status="debug">
+<configuration status="info">
   <appenders>
     <Console name="console" target="SYSTEM_OUT">
       <PatternLayout pattern="%d [%t] %-5p %c %x - %m%n"/>
@@ -30,7 +30,6 @@
     <logger name="org.springframework" level="error"/>
     <logger name="com.gargoylesoftware.htmlunit.DefaultCssErrorHandler" level="error" />
     <logger name="com.gargoylesoftware.htmlunit.html.HtmlScript" level="error" />
-    <logger name="org.apache.http.wire" level="debug" />
 
     <root level="info">
       <appender-ref ref="console"/>

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j.xml
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j.xml b/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j.xml
deleted file mode 100644
index 8ddcde5..0000000
--- a/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~ with the License.  You may obtain a copy of the License at
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
-<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
-
-<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
-
-  <appender name="console" class="org.apache.log4j.ConsoleAppender">
-    <layout class="org.apache.log4j.PatternLayout">
-      <param name="ConversionPattern" value="%d [%t] %-5p %c %x - %m%n"/>
-    </layout>
-  </appender>
-
-  <logger name="JPOX">
-    <level value="error"/>
-  </logger>
-
-  <logger name="org.apache.commons.configuration.DefaultConfigurationBuilder">
-    <level value="error"/>
-  </logger>
-
-
-  <logger name="org.springframework">
-    <level value="ERROR"/>
-  </logger>
-
-  <logger name="org.codehaus.plexus">
-    <level value="ERROR"/>
-  </logger>
-
-  <logger name="org.codehaus.redback">
-    <level value="ERROR"/>
-  </logger>
-
-  <logger name="org.apache.cxf">
-    <level value="ERROR"/>
-  </logger>
-
-  <logger name="org.quartz">
-    <level value="ERROR"/>
-  </logger>
-
-  <logger name="org.apache.archiva">
-    <level value="INFO"/>
-  </logger>
-
-
-  <root>
-    <priority value="ERROR" />
-    <appender-ref ref="console" />
-  </root>
-
-</log4j:configuration>

http://git-wip-us.apache.org/repos/asf/archiva/blob/69c6b594/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j2-test.xml
----------------------------------------------------------------------
diff --git a/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j2-test.xml b/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j2-test.xml
index e9a65a5..6d550a8 100644
--- a/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j2-test.xml
+++ b/archiva-modules/archiva-web/archiva-webapp-test/src/test/resources/logging/log4j2-test.xml
@@ -19,7 +19,7 @@
   -->
 
 
-<configuration status="debug">
+<configuration status="info">
   <appenders>
     <Console name="console" target="SYSTEM_OUT">
       <PatternLayout pattern="%d [%t] %-5p %c %x - %m%n"/>
@@ -39,6 +39,8 @@
 
     <logger name="org.apache.archiva.redback" level="error"/>
 
+    <logger name="org.apache.jackrabbit" level="error" />
+
     <logger name="org.apache.cxf" level="error"/>
 
     <logger name="org.quartz" level="error"/>