You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by md...@apache.org on 2016/01/07 16:27:12 UTC

[2/2] syncope git commit: [SYNCOPE-752] Console tests

[SYNCOPE-752] Console tests


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/3a17fef1
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/3a17fef1
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/3a17fef1

Branch: refs/heads/master
Commit: 3a17fef1674c8aa3b95c9627e1b77697d726a584
Parents: 861457d
Author: Marco Di Sabatino Di Diodoro <md...@apache.org>
Authored: Thu Jan 7 16:26:04 2016 +0100
Committer: Marco Di Sabatino Di Diodoro <md...@apache.org>
Committed: Thu Jan 7 16:26:04 2016 +0100

----------------------------------------------------------------------
 .../console/SyncopeConsoleApplication.java      |   5 +-
 .../markup/html/bootstrap/dialog/BaseModal.java |   5 -
 fit/console-reference/pom.xml                   | 168 +++++---
 .../fit/console/reference/AbstractITCase.java   |  64 +--
 .../fit/console/reference/AccessITCase.java     |  77 ----
 .../fit/console/reference/BaseITCase.java       | 101 +++++
 .../console/reference/ConfigurationITCase.java  | 402 -------------------
 .../fit/console/reference/ConnectorITCase.java  | 238 -----------
 .../console/reference/EditProfileITCase.java    |  94 -----
 .../fit/console/reference/GroupITCase.java      | 211 ----------
 .../fit/console/reference/ReportITCase.java     | 117 ------
 .../fit/console/reference/ResourceITCase.java   | 144 -------
 .../fit/console/reference/SchemaITCase.java     |  70 ----
 .../fit/console/reference/TaskITCase.java       | 123 ------
 .../fit/console/reference/UserITCase.java       | 184 ---------
 15 files changed, 254 insertions(+), 1749 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleApplication.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleApplication.java b/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleApplication.java
index 7c03f02..05e942e 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleApplication.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleApplication.java
@@ -33,8 +33,8 @@ import org.apache.commons.io.FileUtils;
 import org.apache.syncope.client.console.init.ClassPathScanImplementationLookup;
 import org.apache.syncope.client.console.init.ConsoleInitializer;
 import org.apache.syncope.client.console.pages.BasePage;
-import org.apache.syncope.client.console.pages.MustChangePassword;
 import org.apache.syncope.client.console.pages.Dashboard;
+import org.apache.syncope.client.console.pages.MustChangePassword;
 import org.apache.syncope.client.console.pages.Login;
 import org.apache.syncope.client.console.resources.FilesystemResource;
 import org.apache.syncope.client.console.resources.WorkflowDefGETResource;
@@ -50,7 +50,6 @@ import org.apache.wicket.authroles.authentication.AuthenticatedWebSession;
 import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
 import org.apache.wicket.feedback.DefaultCleanupFeedbackMessageFilter;
 import org.apache.wicket.feedback.FeedbackMessage;
-import org.apache.wicket.feedback.IFeedbackMessageFilter;
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.protocol.http.WebApplication;
 import org.apache.wicket.request.resource.IResource;
@@ -87,8 +86,6 @@ public class SyncopeConsoleApplication extends AuthenticatedWebApplication {
 
     private SyncopeClientFactoryBean clientFactory;
 
-    private IFeedbackMessageFilter feedbackMessageCleanupFilter = new DefaultCleanupFeedbackMessageFilter();
-
     @Override
     protected void init() {
         super.init();

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/bootstrap/dialog/BaseModal.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/bootstrap/dialog/BaseModal.java b/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/bootstrap/dialog/BaseModal.java
index ab602b6..69d35a1 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/bootstrap/dialog/BaseModal.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/bootstrap/dialog/BaseModal.java
@@ -25,7 +25,6 @@ import de.agilecoders.wicket.extensions.markup.html.bootstrap.behavior.Resizable
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.List;
-import org.apache.syncope.client.console.commons.Constants;
 import org.apache.syncope.client.console.commons.NotificationAwareComponent;
 import org.apache.syncope.client.console.panels.AbstractModalPanel;
 import org.apache.syncope.client.console.panels.ModalPanel;
@@ -77,10 +76,6 @@ public class BaseModal<T extends Serializable> extends Modal<T> implements Notif
     public BaseModal(final String id) {
         super(id);
 
-        notificationPanel = new NotificationPanel(Constants.FEEDBACK);
-        notificationPanel.setOutputMarkupId(true);
-        addOrReplace(notificationPanel);
-
         form = new Form<>(FORM);
         add(form);
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/pom.xml
----------------------------------------------------------------------
diff --git a/fit/console-reference/pom.xml b/fit/console-reference/pom.xml
index 2238485..ffa35ec 100644
--- a/fit/console-reference/pom.xml
+++ b/fit/console-reference/pom.xml
@@ -133,7 +133,7 @@ under the License.
       <groupId>org.seleniumhq.selenium</groupId>
       <artifactId>selenium-api</artifactId>
       <scope>test</scope>
-    </dependency>
+    </dependency>    
   </dependencies>
 
   <build>
@@ -178,6 +178,20 @@ under the License.
       </plugin>
       
       <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-failsafe-plugin</artifactId>
+        <inherited>true</inherited>
+        <executions>
+          <execution>
+            <id>verify</id>
+            <goals>
+              <goal>verify</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      
+      <plugin>
         <groupId>org.codehaus.cargo</groupId>
         <artifactId>cargo-maven2-plugin</artifactId>
         <inherited>true</inherited>
@@ -232,14 +246,27 @@ under the License.
                 <context>syncope</context>
               </properties>
             </deployable>
-            <deployable>
-              <location>${project.build.directory}/${project.build.finalName}</location>
-              <properties>
-                <context>syncope-console</context>
-              </properties>
-            </deployable>
           </deployables>
         </configuration>
+        <executions>
+          <execution>
+            <id>start-container</id>
+            <phase>pre-integration-test</phase>
+            <goals>
+              <goal>start</goal>
+            </goals>
+            <configuration>
+              <wait>false</wait>
+            </configuration>
+          </execution>
+          <execution>
+            <id>stop-container</id>
+            <phase>post-integration-test</phase>
+            <goals>
+              <goal>stop</goal>
+            </goals>
+          </execution>
+        </executions>
       </plugin>
       
       <plugin>
@@ -290,6 +317,38 @@ under the License.
                     -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:MaxPermSize=512m -Xmx1024m -Xms512m</cargo.jvmargs>
                 </properties>
               </configuration>
+              <deployables>
+                <deployable>
+                  <groupId>net.tirasa.connid.bundles.soap</groupId>
+                  <artifactId>wssample</artifactId>
+                  <type>war</type>
+                  <properties>
+                    <context>wssample</context>
+                  </properties>
+                </deployable>
+                <deployable>
+                  <groupId>org.apache.syncope.fit</groupId>
+                  <artifactId>syncope-fit-build-tools</artifactId>
+                  <type>war</type>
+                  <properties>
+                    <context>syncope-fit-build-tools</context>
+                  </properties>
+                </deployable>
+                <deployable>
+                  <location>${basedir}/../core-reference/target/syncope-fit-core-reference-${project.version}</location>
+                  <pingURL>http://localhost:${cargo.servlet.port}/syncope/cacheStats.jsp</pingURL>
+                  <pingTimeout>60000</pingTimeout>
+                  <properties>
+                    <context>syncope</context>
+                  </properties>
+                </deployable>
+                <deployable>
+                  <location>${project.build.directory}/${project.build.finalName}</location>
+                  <properties>
+                    <context>syncope-console</context>
+                  </properties>
+                </deployable>
+              </deployables>
             </configuration>
             <executions>
               <execution>
@@ -319,6 +378,15 @@ under the License.
       <build>
         <plugins>
           <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-failsafe-plugin</artifactId>
+            <inherited>true</inherited>
+            <configuration>
+              <skipTests>${skipTests}</skipTests>
+            </configuration>
+          </plugin>
+          
+          <plugin>
             <groupId>org.codehaus.cargo</groupId>
             <artifactId>cargo-maven2-plugin</artifactId>
             <inherited>true</inherited>
@@ -352,61 +420,21 @@ under the License.
     </profile>
     
     <profile>
-      <id>selenium</id>
+      <id>jrebel</id>
       
       <build>
-        <defaultGoal>clean verify</defaultGoal>
-        <plugins>
+        <defaultGoal>clean verify cargo:run</defaultGoal>
 
+        <plugins>
           <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-failsafe-plugin</artifactId>
             <inherited>true</inherited>
-            <executions>
-              <execution>
-                <id>verify</id>
-                <goals>
-                  <goal>verify</goal>
-                </goals>
-              </execution>
-            </executions>
-          </plugin>
-
-          <plugin>
-            <groupId>org.codehaus.cargo</groupId>
-            <artifactId>cargo-maven2-plugin</artifactId>
-            <inherited>true</inherited>
-            <executions>
-              <execution>
-                <id>start-container</id>
-                <phase>pre-integration-test</phase>
-                <goals>
-                  <goal>start</goal>
-                </goals>
-                <configuration>
-                  <wait>false</wait>
-                </configuration>
-              </execution>
-              <execution>
-                <id>stop-container</id>
-                <phase>post-integration-test</phase>
-                <goals>
-                  <goal>stop</goal>
-                </goals>
-              </execution>
-            </executions>
+            <configuration>
+              <skipTests>true</skipTests>
+            </configuration>
           </plugin>
-        </plugins>
-      </build>
-    </profile>
-    
-    <profile>
-      <id>jrebel</id>
-      
-      <build>
-        <defaultGoal>clean verify cargo:run</defaultGoal>
-
-        <plugins>
+          
           <plugin>
             <groupId>org.zeroturnaround</groupId>
             <artifactId>jrebel-maven-plugin</artifactId>
@@ -532,6 +560,38 @@ under the License.
                     -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:MaxPermSize=512m -Xmx1024m -Xms512m</cargo.jvmargs>
                 </properties>
               </configuration>
+              <deployables>
+                <deployable>
+                  <groupId>net.tirasa.connid.bundles.soap</groupId>
+                  <artifactId>wssample</artifactId>
+                  <type>war</type>
+                  <properties>
+                    <context>wssample</context>
+                  </properties>
+                </deployable>
+                <deployable>
+                  <groupId>org.apache.syncope.fit</groupId>
+                  <artifactId>syncope-fit-build-tools</artifactId>
+                  <type>war</type>
+                  <properties>
+                    <context>syncope-fit-build-tools</context>
+                  </properties>
+                </deployable>
+                <deployable>
+                  <location>${basedir}/../core-reference/target/syncope-fit-core-reference-${project.version}</location>
+                  <pingURL>http://localhost:${cargo.servlet.port}/syncope/cacheStats.jsp</pingURL>
+                  <pingTimeout>60000</pingTimeout>
+                  <properties>
+                    <context>syncope</context>
+                  </properties>
+                </deployable>
+                <deployable>
+                  <location>${project.build.directory}/${project.build.finalName}</location>
+                  <properties>
+                    <context>syncope-console</context>
+                  </properties>
+                </deployable>
+              </deployables>
             </configuration>
             <executions>
               <execution>

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AbstractITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AbstractITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AbstractITCase.java
index 1fdc90e..4408eb1 100644
--- a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AbstractITCase.java
+++ b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AbstractITCase.java
@@ -18,14 +18,17 @@
  */
 package org.apache.syncope.fit.console.reference;
 
-import org.junit.After;
+import static org.apache.syncope.client.console.init.ConsoleInitializer.CLASSPATH_LOOKUP;
+import static org.apache.syncope.client.console.init.ConsoleInitializer.MIMETYPES_LOADER;
+
+import javax.servlet.ServletContext;
+import org.apache.syncope.client.console.SyncopeConsoleApplication;
+import org.apache.syncope.client.console.init.ClassPathScanImplementationLookup;
+import org.apache.syncope.client.console.init.MIMETypesLoader;
+import org.apache.syncope.client.console.pages.Login;
+import org.apache.wicket.util.tester.FormTester;
+import org.apache.wicket.util.tester.WicketTester;
 import org.junit.Before;
-import org.openqa.selenium.By;
-import org.openqa.selenium.WebDriver;
-import org.openqa.selenium.WebElement;
-import org.openqa.selenium.firefox.FirefoxDriver;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.WebDriverWait;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -37,31 +40,40 @@ public abstract class AbstractITCase {
 
     public static final String PASSWORD = "password";
 
-    public static final String BASE_URL = "http://localhost:9080/syncope-console/";
-
-    protected WebDriver seleniumDriver;
+    protected WicketTester wicketTester;
 
-    protected WebDriverWait wait;
+    protected SyncopeConsoleApplication testApplicaton;
 
     @Before
-    public void setUp() throws Exception {
-        seleniumDriver = new FirefoxDriver();
-        seleniumDriver.get(BASE_URL);
-        wait = new WebDriverWait(seleniumDriver, 10);
+    public void setUp() {
+
+        testApplicaton = new SyncopeConsoleApplication() {
 
-        WebElement element = seleniumDriver.findElement(By.name("userId"));
-        element.sendKeys(ADMIN);
-        element = seleniumDriver.findElement(By.name("password"));
-        element.sendKeys(PASSWORD);
-        seleniumDriver.findElement(By.name("p::submit")).click();
+            @Override
+            protected void init() {
+                final ServletContext ctx = getServletContext();
+                final ClassPathScanImplementationLookup lookup = new ClassPathScanImplementationLookup();
+                lookup.load();
+                ctx.setAttribute(CLASSPATH_LOOKUP, lookup);
 
-        (new WebDriverWait(seleniumDriver, 10))
-                .until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@alt='Logout']")));
+                final MIMETypesLoader mimeTypes = new MIMETypesLoader();
+                mimeTypes.load();
+                ctx.setAttribute(MIMETYPES_LOADER, mimeTypes);
+                
+                super.init();
+            }
+        };
+
+        wicketTester = new WicketTester(testApplicaton);
     }
 
-    @After
-    public void tearDown() throws Exception {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Logout\"]")).click();
-        seleniumDriver.quit();
+    protected void doLogin(final String user, final String passwd) {
+        wicketTester.startPage(Login.class);
+        wicketTester.assertRenderedPage(Login.class);
+
+        final FormTester formTester = wicketTester.newFormTester("login");
+        formTester.setValue("username", user);
+        formTester.setValue("password", passwd);
+        formTester.submit("submit");
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AccessITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AccessITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AccessITCase.java
deleted file mode 100644
index 3eb3aa7..0000000
--- a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/AccessITCase.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.fit.console.reference;
-
-import org.junit.Test;
-import org.openqa.selenium.By;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-
-public class AccessITCase extends AbstractITCase {
-
-    @Test
-    public void clickAround() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Schema\"]")).click();
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']/ul/li[2]/a")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[2]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[@id='uschema']/div/div/span/ul/li[2]/a")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='uschema']/div/div/span/ul/li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[3]/a")).click();
-        seleniumDriver.findElement(By.xpath("//div[@id='mschema']/div/div/span/ul/li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[4]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[@id='gschema']/div/div/span/ul/li[2]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Users\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[3]/ul/li[2]/a/span")));
-        seleniumDriver.findElement(By.xpath("//div[3]/ul/li[2]/a/span")).click();
-
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@alt=\"Resources\"]")));
-
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@alt=\"TODO\"]")));
-
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"TODO\"]")).click();
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@alt=\"Reports\"]")));
-
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Reports\"]")).click();
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@alt=\"Configuration\"]")));
-
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Configuration\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']/ul/li[2]/a/span")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[3]/a/span")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[3]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Tasks\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']/ul/li[2]/a/span")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[2]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Tasks\"]")).click();
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[4]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[5]/a/span")).click();
-    }
-}

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/BaseITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/BaseITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/BaseITCase.java
new file mode 100644
index 0000000..6457963
--- /dev/null
+++ b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/BaseITCase.java
@@ -0,0 +1,101 @@
+/*
+ * 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.
+ */
+package org.apache.syncope.fit.console.reference;
+
+import static org.apache.syncope.fit.console.reference.AbstractITCase.ADMIN;
+import static org.apache.syncope.fit.console.reference.AbstractITCase.PASSWORD;
+
+import org.apache.syncope.client.console.pages.CamelRoutes;
+import org.apache.syncope.client.console.pages.Dashboard;
+import org.apache.syncope.client.console.pages.Layouts;
+import org.apache.syncope.client.console.pages.Login;
+import org.apache.syncope.client.console.pages.Logs;
+import org.apache.syncope.client.console.pages.Notifications;
+import org.apache.syncope.client.console.pages.Policies;
+import org.apache.syncope.client.console.pages.Realms;
+import org.apache.syncope.client.console.pages.Reports;
+import org.apache.syncope.client.console.pages.Roles;
+import org.apache.syncope.client.console.pages.SecurityQuestions;
+import org.apache.syncope.client.console.pages.Types;
+import org.apache.syncope.client.console.pages.Workflow;
+import org.apache.syncope.client.console.topology.Topology;
+import org.junit.Test;
+
+public class BaseITCase extends AbstractITCase {
+
+    @Test
+    public void loginPage() {
+        wicketTester.startPage(Login.class);
+        wicketTester.assertRenderedPage(Login.class);
+    }
+
+    @Test
+    public void successfullyLogin() {
+        doLogin(ADMIN, PASSWORD);
+        wicketTester.assertRenderedPage(Dashboard.class);
+    }
+
+    @Test
+    public void unsuccessfullyLogin() {
+        doLogin(ADMIN, PASSWORD + 1);
+        wicketTester.assertRenderedPage(Login.class);
+    }
+
+    @Test
+    public void browsingBookmarkablePageLink() {
+        doLogin(ADMIN, PASSWORD);
+        wicketTester.assertRenderedPage(Dashboard.class);
+
+        wicketTester.clickLink("realmsLI:realms");
+        wicketTester.assertRenderedPage(Realms.class);
+
+        wicketTester.clickLink("topologyLI:topology");
+        wicketTester.assertRenderedPage(Topology.class);
+
+        wicketTester.clickLink("reportsLI:reports");
+        wicketTester.assertRenderedPage(Reports.class);
+
+        wicketTester.clickLink("configurationLI:configurationUL:workflowLI:workflow");
+        wicketTester.assertRenderedPage(Workflow.class);
+
+        wicketTester.clickLink("configurationLI:configurationUL:logsLI:logs");
+        wicketTester.assertRenderedPage(Logs.class);
+
+        wicketTester.clickLink("configurationLI:configurationUL:securityquestionsLI:securityquestions");
+        wicketTester.assertRenderedPage(SecurityQuestions.class);
+
+        wicketTester.clickLink("configurationLI:configurationUL:typesLI:types");
+        wicketTester.assertRenderedPage(Types.class);
+
+        wicketTester.clickLink("configurationLI:configurationUL:rolesLI:roles");
+        wicketTester.assertRenderedPage(Roles.class);
+
+        wicketTester.clickLink("configurationLI:configurationUL:policiesLI:policies");
+        wicketTester.assertRenderedPage(Policies.class);
+
+        wicketTester.clickLink("configurationLI:configurationUL:layoutsLI:layouts");
+        wicketTester.assertRenderedPage(Layouts.class);
+
+        wicketTester.clickLink("configurationLI:configurationUL:notificationsLI:notifications");
+        wicketTester.assertRenderedPage(Notifications.class);
+
+        wicketTester.clickLink("camelroutesLI:camelroutes");
+        wicketTester.assertRenderedPage(CamelRoutes.class);
+    }
+}

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ConfigurationITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ConfigurationITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ConfigurationITCase.java
deleted file mode 100644
index c634d1d..0000000
--- a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ConfigurationITCase.java
+++ /dev/null
@@ -1,402 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.fit.console.reference;
-
-import static org.junit.Assert.assertTrue;
-
-import org.junit.Test;
-import org.openqa.selenium.By;
-import org.openqa.selenium.WebElement;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.Select;
-
-public class ConfigurationITCase extends AbstractITCase {
-
-    @Test
-    public void editParameters() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Configuration\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@title='Parameters']")));
-
-        seleniumDriver.findElement(By.xpath("//img[@title='Parameters']/ancestor::a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        seleniumDriver.findElement(
-                By.xpath("//span[contains(text(), 'log.lastlogindate')]/../../div[2]/span/input")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/input[@type='submit']")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-        wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("feedback")));
-        assertTrue(
-                seleniumDriver.findElement(By.tagName("body")).getText().contains("Operation executed successfully"));
-    }
-
-    @Test
-    public void browsePasswordPolicy() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Configuration\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//div[@id='policies']/ul/li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//div[@id='password']/span/div/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//input[@name='key:textField']")));
-
-        WebElement element = seleniumDriver.findElement(By.name("description:textField"));
-        element.sendKeys("new description");
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/input[@type='submit']")).click();
-        seleniumDriver.switchTo().defaultContent();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-        wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("feedback")));
-        assertTrue(
-                seleniumDriver.findElement(By.tagName("body")).getText().contains("Operation executed successfully"));
-    }
-
-    @Test
-    public void browseWorkflowDef() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Configuration\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[5]/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='workflow']/div/span/img")));
-    }
-
-    @Test
-    public void setLogLevel() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Configuration\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[6]/a")).click();
-
-        final Select select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[@id='core']/div/span/table/tbody/tr/td[2]/select")));
-        select.selectByVisibleText("ERROR");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='workflow']/div/span/img")));
-        wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("feedback")));
-        assertTrue(
-                seleniumDriver.findElement(By.tagName("body")).getText().contains("Operation executed successfully"));
-    }
-
-    @Test
-    public void createNotification() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Configuration\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[3]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[@id='notifications']/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[2]/form/div[3]/div/div/div/div/label")));
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//input[@name='sender:textField']")));
-
-        seleniumDriver.findElement(By.name("sender:textField")).sendKeys("test@syncope.it");
-
-        seleniumDriver.findElement(By.name("subject:textField")).sendKeys("test@syncope.it");
-
-        Select select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[3]/div[2]/span/select")));
-        select.selectByVisibleText("UserPlainSchema");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[2]/form/div[3]/div/div/div[4]/div[2]/span/select/option[2]")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[4]/div[2]/span/select")));
-        select.selectByVisibleText("fullname");
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[5]/div[2]/span/select")));
-        select.selectByVisibleText("optin");
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[6]/div[2]/span/select")));
-        select.selectByVisibleText("ALL");
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[3]/a/span")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[2]/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='eventSelection:categoryContainer:type:dropDownChoiceField']"
-                        + "/option[text()='PROPAGATION']")));
-
-        select = new Select(seleniumDriver.findElement(By.xpath(
-                "//select[@name='eventSelection:categoryContainer:type:dropDownChoiceField']")));
-        select.selectByVisibleText("PROPAGATION");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='eventSelection:categoryContainer:category:dropDownChoiceField']"
-                        + "/option[text()='group']")));
-
-        select = new Select(seleniumDriver.findElement(By.xpath(
-                "//select[@name='eventSelection:categoryContainer:category:dropDownChoiceField']")));
-        select.selectByVisibleText("group");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='eventSelection:categoryContainer:subcategory:dropDownChoiceField']"
-                        + "/option[text()='resource-db-sync']")));
-
-        select = new Select(seleniumDriver.findElement(By.xpath(
-                "//select[@name='eventSelection:categoryContainer:subcategory:dropDownChoiceField']")));
-        select.selectByVisibleText("resource-db-sync");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//input[@name='eventSelection:eventsContainer:eventsPanel:failureGroup']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@class='eventSelectionWidzard']/div[2]/div[3]/span/div/input")).
-                click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[4]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div[4]/div/div/span/input")).click();
-
-        wait.until(ExpectedConditions.elementToBeClickable(By.name(
-                "staticRecipients:multiValueContainer:view:0:panel:textField")));
-
-        seleniumDriver.findElement(By.name(
-                "staticRecipients:multiValueContainer:view:0:panel:textField")).
-                sendKeys("syncope445@syncope.apache.org");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[2]/form/div[3]/div[4]/div/div[2]/label")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[4]/input")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-    }
-
-    @Test
-    public void createDisabledNotification() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Configuration\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[3]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[@id='notifications']/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[2]/form/div[3]/div/div/div/div/label")));
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//input[@name='sender:textField']")));
-
-        seleniumDriver.findElement(By.name("sender:textField")).sendKeys("test@syncope.it");
-
-        Select select = new Select(seleniumDriver.findElement(
-                By.xpath("//div[2]/form/div[3]/div/div[1]/div[3]/div[2]/span/select")));
-        select.selectByVisibleText("UserPlainSchema");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//div[2]/form/div[3]/div/div/div[4]/div[2]/span/select/option[2]")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[4]/div[2]/span/select")));
-        select.selectByVisibleText("fullname");
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[5]/div[2]/span/select")));
-        select.selectByVisibleText("optin");
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[6]/div[2]/span/select")));
-        select.selectByVisibleText("ALL");
-
-        // disable notification
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[7]/div[2]/span/input")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[3]/a/span")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[2]/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//select[@name='eventSelection:categoryContainer:type:dropDownChoiceField']"
-                + "/option[text()='PROPAGATION']")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath(
-                                "//select[@name='eventSelection:categoryContainer:type:dropDownChoiceField']")));
-        select.selectByVisibleText("PROPAGATION");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//select[@name='eventSelection:categoryContainer:category:dropDownChoiceField']"
-                + "/option[text()='group']")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath(
-                                "//select[@name='eventSelection:categoryContainer:category:dropDownChoiceField']")));
-        select.selectByVisibleText("group");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//select[@name='eventSelection:categoryContainer:subcategory:dropDownChoiceField']"
-                + "/option[text()='resource-db-sync']")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath(
-                                "//select[@name='eventSelection:categoryContainer:subcategory:dropDownChoiceField']")));
-        select.selectByVisibleText("resource-db-sync");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//input[@name='eventSelection:eventsContainer:eventsPanel:failureGroup']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@class='eventSelectionWidzard']/div[2]/div[3]/span/div/input")).
-                click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[4]/a/span")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div[4]/div/div/span/input")).click();
-
-        wait.until(ExpectedConditions.elementToBeClickable(By.name(
-                "staticRecipients:multiValueContainer:view:0:panel:textField")));
-
-        seleniumDriver.findElement(
-                By.name("staticRecipients:multiValueContainer:view:0:panel:textField"))
-                .sendKeys("syncope492@syncope.apache.org");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//div[2]/form/div[3]/div[4]/div/div[2]/label")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[4]/input")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-    }
-
-    @Test
-    public void issueSYNCOPE446() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Configuration\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[3]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[@id='notifications']/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[2]/form/div[3]/div/div/div/div/label")));
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//input[@name='sender:textField']")));
-
-        seleniumDriver.findElement(By.name("sender:textField")).sendKeys("syncope446@syncope.it");
-        seleniumDriver.findElement(By.name("subject:textField")).sendKeys("Test issue Syncope 446");
-
-        Select select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[3]/div[2]/span/select")));
-        select.selectByVisibleText("UserPlainSchema");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[2]/form/div[3]/div/div/div[4]/div[2]/span/select/option[2]")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[4]/div[2]/span/select")));
-        select.selectByVisibleText("email");
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[5]/div[2]/span/select")));
-        select.selectByVisibleText("optin");
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/div/div[6]/div[2]/span/select")));
-        select.selectByVisibleText("ALL");
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[3]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[2]/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='eventSelection:categoryContainer:type:dropDownChoiceField']"
-                        + "/option[text()='REST']")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath(
-                                "//select[@name='eventSelection:categoryContainer:type:dropDownChoiceField']")));
-        select.selectByVisibleText("REST");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='eventSelection:categoryContainer:category:dropDownChoiceField']"
-                        + "/option[text()='GroupLogic']")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath(
-                                "//select[@name='eventSelection:categoryContainer:category:dropDownChoiceField']")));
-        select.selectByVisibleText("GroupLogic");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//input[@name='eventSelection:eventsContainer:eventsPanel:successGroup']")));
-
-        seleniumDriver.findElement(
-                By.xpath("//div[@class='eventSelectionWidzard']/div[2]/div[3]/span/div/input")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[3]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div[3]/span/div[4]/div/span/input")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='aboutContainer:groupAbout:searchFormContainer:searchView:0:type']"
-                        + "/option[text()='ENTITLEMENT']")));
-
-        wait.until(ExpectedConditions.elementToBeClickable(
-                By.xpath("//select[@name='aboutContainer:groupAbout:searchFormContainer:searchView:0:type']")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath(
-                                "//select[@name='aboutContainer:groupAbout:searchFormContainer:searchView:0:type']")));
-        select.selectByVisibleText("ENTITLEMENT");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//select[@name='aboutContainer:groupAbout:searchFormContainer:searchView:0:property']"
-                + "/option[text()='GROUP_CREATE']")));
-
-        select = new Select(seleniumDriver.findElement(By.xpath(
-                "//select[@name='aboutContainer:groupAbout:searchFormContainer:searchView:0:property']")));
-        select.selectByVisibleText("GROUP_CREATE");
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/ul/li[4]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//input[@name='recipientsContainer:checkRecipients:checkboxField']")).
-                click();
-
-        wait.until(ExpectedConditions.elementToBeClickable(By.name(
-                "staticRecipients:multiValueContainer:view:0:panel:textField")));
-
-        seleniumDriver.findElement(By.name("staticRecipients:multiValueContainer:view:0:panel:textField")).
-                sendKeys("syncope446@syncope.apache.org");
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[4]/input")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-    }
-}

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ConnectorITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ConnectorITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ConnectorITCase.java
deleted file mode 100644
index fc21e4b..0000000
--- a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ConnectorITCase.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.fit.console.reference;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-import org.junit.Test;
-import org.openqa.selenium.Alert;
-import org.openqa.selenium.By;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.Select;
-
-public class ConnectorITCase extends AbstractITCase {
-
-    @Test
-    public void browseCreateModal() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[2]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[3]/div[2]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(("//iframe"))));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//form/div[2]/div/div/div[3]/div[2]/span/select")));
-
-        Select select = new Select(
-                seleniumDriver.findElement(By.xpath("//form/div[2]/div[1]/div[1]/div[2]/div[2]/span/select")));
-
-        select.selectByValue("0");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='connectorName:dropDownChoiceField']/option[3]")));
-
-        select = new Select(
-                seleniumDriver.findElement(By.xpath("//form/div[2]/div[1]/div[1]/div[3]/div[2]/span/select")));
-        select.selectByVisibleText("net.tirasa.connid.bundles.soap");
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/ul/li[1]/a/span")).click();
-
-        assertTrue(seleniumDriver.findElement(By.xpath("//form/div[2]/div/div/div[3]/div[2]")).isDisplayed());
-
-        seleniumDriver.switchTo().defaultContent();
-
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void browseEditModal() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[3]/ul/li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//tr[4]/td[7]/div/span[13]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//div[2]/form/div[2]/div/div/div[3]/div[2]/span/select")));
-
-        assertEquals("ConnInstance103",
-                seleniumDriver.findElement(By.xpath("//input[@name='displayName:textField']")).getAttribute("value"));
-
-        assertEquals("net.tirasa.connid.bundles.soap",(new Select(seleniumDriver.findElement(
-                By.xpath("//select[@name='connectorName:dropDownChoiceField']")))).getFirstSelectedOption().getText());
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/ul/li[2]/a/span")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void delete() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[3]/ul/li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//tr[4]/td[7]/div/span[15]/a")).click();
-
-        Alert alert = seleniumDriver.switchTo().alert();
-        assertTrue(alert.getText().equals("Do you really want to delete the selected item(s)?"));
-        alert.accept();
-
-        wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("feedback")));
-        assertTrue(seleniumDriver.findElement(By.tagName("body")).getText().contains("Error: "));
-    }
-
-    @Test
-    public void checkConnection() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[3]/ul/li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//tr[2]/td[7]/div/span[13]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='version:dropDownChoiceField']")));
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//div[2]/form/div[2]/div/div/div[3]/div[2]/span/select")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/ul/li[2]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[2]/form/div[2]/div[2]/div/span/div[2]/div[30]/a")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/div[2]/div/span/div[2]/div[30]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div/ul/li/span[contains(text(),'Successful connection')]")));
-
-        seleniumDriver.switchTo().defaultContent();
-    }
-
-    @Test
-    public void issueSYNCOPE506() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//tr[4]/td[3]/div/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='version:dropDownChoiceField']")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/ul/li[2]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[2]/form/div[2]/div/div/div[3]/div[2]/span/select")));
-
-        seleniumDriver.findElement(By.xpath(
-                "//div[2]/form/div[2]/div[2]/div/span/div[2]/div[30]/div[3]/span/div/div/span/a[2]/span/span")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/input")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("feedback")));
-        assertTrue(seleniumDriver.findElement(By.tagName("body")).getText().contains("Operation executed successfully"));
-
-        seleniumDriver.findElement(By.xpath("//tr[4]/td[3]/div/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//select[@name='version:dropDownChoiceField']")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/ul/li[2]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[2]/form/div[2]/div/div/div[3]/div[2]/span/select")));
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//input[@value='99']")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/ul/li[2]/a/span")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void issueSyncope605() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[3]/ul/li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//tr[8]/td[7]/div/span[13]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//div[2]/form/div[2]/div/div/div[3]/div[2]/span/select")));
-
-        assertEquals("H2-testsync",
-                seleniumDriver.findElement(By.xpath("//input[@name='displayName:textField']")).getAttribute("value"));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/ul/li[3]/a")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/div[3]/span/input[7]")).click();
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/input")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("feedback")));
-        
-        seleniumDriver.findElement(By.xpath("//tr[8]/td[7]/div/span[13]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//div[2]/form/div[2]/div/div/div[3]/div[2]/span/select")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/ul/li[3]/a")).click();
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[2]/form/div[2]/div[3]/span/input[7]")));
-
-        assertFalse(seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/div[3]/span/input[7]")).isSelected());
-        seleniumDriver.switchTo().defaultContent();
-    }
-}

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/EditProfileITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/EditProfileITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/EditProfileITCase.java
deleted file mode 100644
index edee7e0..0000000
--- a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/EditProfileITCase.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.fit.console.reference;
-
-import java.util.concurrent.TimeUnit;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.openqa.selenium.By;
-import org.openqa.selenium.WebDriver;
-import org.openqa.selenium.WebElement;
-import org.openqa.selenium.firefox.FirefoxDriver;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.WebDriverWait;
-
-public class EditProfileITCase {
-
-    private WebDriver seleniumDriver;
-
-    private WebDriverWait wait;
-
-    @Before
-    public void setUp() throws Exception {
-        seleniumDriver = new FirefoxDriver();
-        seleniumDriver.get(AbstractITCase.BASE_URL);
-        wait = new WebDriverWait(seleniumDriver, 10);
-
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Logout\"]")).click();
-        seleniumDriver.quit();
-    }
-
-    @Test
-    public void selfRegistration() {
-        seleniumDriver.findElement(By.xpath("//div/div[2]/div[1]/span/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//span[contains(text(),'Plain attributes')]")));
-        seleniumDriver.switchTo().defaultContent();
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-
-        // only to have some "Logout" available for @After
-        seleniumDriver.get(AbstractITCase.BASE_URL);
-        seleniumDriver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
-        WebElement element = seleniumDriver.findElement(By.name("userId"));
-        element.sendKeys(AbstractITCase.ADMIN);
-        element = seleniumDriver.findElement(By.name("password"));
-        element.sendKeys(AbstractITCase.PASSWORD);
-        seleniumDriver.findElement(By.name("p::submit")).click();
-        seleniumDriver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
-    }
-
-    @Test
-    public void editUserProfile() {
-        WebElement element = seleniumDriver.findElement(By.name("userId"));
-        element.sendKeys("rossini");
-        element = seleniumDriver.findElement(By.name("password"));
-        element.sendKeys("password");
-        seleniumDriver.findElement(By.name("p::submit")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='username']/a")));
-        seleniumDriver.findElement(By.xpath("//div[@id='username']/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//span[contains(text(),'Plain attributes')]")));
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//input[@value='rossini']")));
-        seleniumDriver.switchTo().defaultContent();
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-}

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/GroupITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/GroupITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/GroupITCase.java
deleted file mode 100644
index a4f6ef2..0000000
--- a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/GroupITCase.java
+++ /dev/null
@@ -1,211 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.fit.console.reference;
-
-import static junit.framework.TestCase.assertTrue;
-import org.junit.Test;
-import org.openqa.selenium.Alert;
-import org.openqa.selenium.By;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.Select;
-
-public class GroupITCase extends AbstractITCase {
-
-    @Test
-    public void createRootNodeModal() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='navigationPane']")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span/div/div/div/div/div/span/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div/div/span[2]/span/div/p/span/span/a")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span[2]/span/div/p/span/span/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-        
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//span[contains(text(),'Plain attributes')]")));
-
-        seleniumDriver.switchTo().defaultContent();
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void browseCreateModal() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='navigationPane']")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span/div/div/div/div/div[2]/div/div/span/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@alt='create icon']")));
-
-        seleniumDriver.findElement(By.xpath("//img[@alt='create icon']")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[2]/form/div[3]/div/ul/li[1]/a/span")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[1]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[2]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[3]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[4]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[5]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[6]/a/span")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void browseEditModal() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='navigationPane']")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span/div/div/div/div/div[2]/div/div/span/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@alt='edit icon']")));
-
-        seleniumDriver.findElement(By.xpath("//img[@alt='edit icon']")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[2]/form/div[3]/div/ul/li[1]/a/span")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[2]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[3]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[4]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[5]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[6]/a/span")).click();
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div/ul/li[7]/a/span")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void checkSecurityTab() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='navigationPane']")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span/div/div/div/div/div[2]/div/div/span/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div/form/div[2]/ul/li[7]/a")));
-
-        seleniumDriver.findElement(By.xpath("//div/form/div[2]/ul/li[7]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//form/div[2]/div/div[8]/span/div/div/div/label")));
-    }
-
-    @Test
-    public void browseUserEditModal() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='navigationPane']")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span/div/div/div/div/div[2]/div/div/span/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div/div/span[2]/span/span/div/form/div[2]/ul/li[9]/a")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span[2]/span/span/div/form/div[2]/ul/li[9]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//input[@name=\"userListContainer:search\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//table/tbody/tr/td[5]/div/span[13]/a")));
-
-        seleniumDriver.findElement(By.xpath("//table/tbody/tr/td[5]/div/span[13]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-        
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//form/div[3]/div/span/div/div/div[contains(text(),'Username')]")));
-
-        seleniumDriver.switchTo().defaultContent();
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void searchUsers() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='navigationPane']")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span/div/div/div/div/div[2]/div/div/span/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div/div/span[2]/span/span/div/form/div[2]/ul/li[9]/a")));
-
-        seleniumDriver.findElement(By.xpath("//div/div/span[2]/span/span/div/form/div[2]/ul/li[9]/a")).click();
-
-        seleniumDriver.findElement(By.xpath("//input[@name=\"userListContainer:search\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//span[15]/a")));
-    }
-
-    @Test
-    public void deleteGroup() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='navigationPane']")));
-
-        seleniumDriver.findElement(By.xpath(
-                "//div/div/span/div/div/div/div/div[2]/div[2]/div[2]/div/div[2]/div[3]/div/span[2]/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//img[@alt='delete icon']")));
-
-        seleniumDriver.findElement(By.xpath("//img[@alt='delete icon']")).click();
-
-        Alert alert = seleniumDriver.switchTo().alert();
-        assertTrue(alert.getText().equals("Do you really want to delete the selected item(s)?"));
-        alert.accept();
-    }
-
-    @Test
-    public void issueSYNCOPE510() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Groups\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//span[contains(text(),'Search')]")));
-
-        seleniumDriver.findElement(By.xpath("//span[contains(text(),'Search')]")).click() ;
-        Select select = new Select(seleniumDriver.findElement(By.xpath("//td[2]/select")));
-        select.selectByVisibleText("RESOURCE");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//td[3]/select[option='ws-target-resource-2']")));
-
-        select = new Select(seleniumDriver.findElement(By.xpath("//td[3]/select")));
-        select.selectByVisibleText("ws-target-resource-2");
-        seleniumDriver.findElement(By.xpath("//form/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[3]/div[2]/div[2]/span/div[1]/span[1]/span/form/span/table/tbody/tr/td[3]/div")));
-    }
-}

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ReportITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ReportITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ReportITCase.java
deleted file mode 100644
index 1898c07..0000000
--- a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ReportITCase.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.fit.console.reference;
-
-import static org.junit.Assert.assertTrue;
-
-import org.apache.syncope.common.lib.report.StaticReportletConf;
-import org.junit.Test;
-import org.openqa.selenium.By;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.Select;
-
-public class ReportITCase extends AbstractITCase {
-
-    @Test
-    public void readReportlet() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Reports\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-        seleniumDriver.findElement(By.xpath("//table/tbody/tr/td[9]/div/span[13]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[2]/form/div[2]/div/div/span/div/div/div/span")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[2]/div/div/span/div/div[5]/div[2]/div/div[2]/div/a"))
-                .click();
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div[2]/form/div[2]/div/div/span/div/div[5]/div[2]/div/div/select")));
-
-        Select select = new Select(seleniumDriver.findElement(
-                By.xpath("//div[2]/form/div[2]/div/div/span/div/div[5]/div[2]/div/div/select")));
-        select.selectByVisibleText("testUserReportlet");
-
-        seleniumDriver.findElement(
-                By.xpath("//div[2]/form/div[2]/div/div/span/div/div[5]/div[2]/div[2]/div[2]/a")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-        wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(
-                By.xpath("//div[7]/form/div/div[2]/div/div/div/div[2]/div/div/iframe")));
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.name("reportletClass:dropDownChoiceField")));
-
-        select = new Select(seleniumDriver.findElement(By.name("reportletClass:dropDownChoiceField")));
-        select.selectByVisibleText(StaticReportletConf.class.getName());
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/input")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void executeReport() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Reports\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//table/tbody/tr/td[9]/div/span[6]/a")).click();
-
-        wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("feedback")));
-        assertTrue(seleniumDriver.findElement(
-                By.tagName("body")).getText().contains("Operation executed successfully"));
-    }
-
-    @Test
-    public void navigateAudit() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Reports\"]")).click();
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[@id='tabs']/ul/li[2]/a/span")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//option[contains(text(),'[REST]:[EntitlementLogic]:[]:[getOwn]:[SUCCESS]')]")));
-
-        Select select = new Select(seleniumDriver.findElement(By.xpath(
-                "//select[@name='events:categoryContainer:type:dropDownChoiceField']")));
-        select.selectByVisibleText("PROPAGATION");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//select[@name='events:categoryContainer:category:dropDownChoiceField']/option[text()='user']")));
-
-        select = new Select(seleniumDriver.findElement(By.xpath(
-                "//select[@name='events:categoryContainer:category:dropDownChoiceField']")));
-        select.selectByVisibleText("user");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//select[@name='events:categoryContainer:subcategory:dropDownChoiceField']"
-                + "/option[text()='resource-csv']")));
-
-        select = new Select(seleniumDriver.findElement(By.xpath(
-                "//select[@name='events:categoryContainer:subcategory:dropDownChoiceField']")));
-        select.selectByVisibleText("resource-csv");
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//input[@name='events:eventsContainer:eventsPanel:successGroup']")));
-    }
-}

http://git-wip-us.apache.org/repos/asf/syncope/blob/3a17fef1/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ResourceITCase.java
----------------------------------------------------------------------
diff --git a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ResourceITCase.java b/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ResourceITCase.java
deleted file mode 100644
index cf9c10c..0000000
--- a/fit/console-reference/src/test/java/org/apache/syncope/fit/console/reference/ResourceITCase.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.fit.console.reference;
-
-import static org.junit.Assert.assertTrue;
-
-import org.junit.Test;
-import org.openqa.selenium.Alert;
-import org.openqa.selenium.By;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-
-public class ResourceITCase extends AbstractITCase {
-
-    @Test
-    public void browseCreateModal() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//div[3]/div/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//form/div[3]/div/span/div/div/div/label[text()='Name']")));
-
-        seleniumDriver.switchTo().defaultContent();
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void browseEditModal() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//td[6]/div/span[13]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
-                "//form/div[3]/div/span/div/div/div/label[text()='Name']")));
-
-        seleniumDriver.findElement(By.xpath("//li[2]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//tbody/tr[2]/td/input")));
-
-        seleniumDriver.findElement(By.xpath("//tbody/tr[2]/td/input")).click();
-
-        Alert alert = seleniumDriver.switchTo().alert();
-        assertTrue(alert.getText().equals("Do you really want to delete the selected item(s)?"));
-        alert.accept();
-
-        seleniumDriver.findElement(By.xpath("//div[4]/input")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-    }
-
-    @Test
-    public void delete() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//tr[3]/td[6]/div/span[15]/a")).click();
-
-        Alert alert = seleniumDriver.switchTo().alert();
-        assertTrue(alert.getText().equals("Do you really want to delete the selected item(s)?"));
-        alert.accept();
-    }
-
-    @Test
-    public void checkSecurityTab() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(By.xpath("//td[6]/div/span[13]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//form/div[3]/div/span/div/div/div/label[text()='Name']")));
-
-        seleniumDriver.findElement(By.xpath("//li[4]/a")).click();
-
-        assertTrue(seleniumDriver.findElements(By.xpath("//label[@for='passwordPolicy']")).size() > 0);
-
-        seleniumDriver.findElement(By.xpath("//li[1]/a")).click();
-        seleniumDriver.findElement(By.xpath("//li[2]/a")).click();
-        seleniumDriver.findElement(By.xpath("//li[3]/a")).click();
-
-        seleniumDriver.switchTo().defaultContent();
-
-        seleniumDriver.findElement(By.xpath("//a[@class='w_close']")).click();
-    }
-
-    @Test
-    public void checkConnection() {
-        seleniumDriver.findElement(By.xpath("//img[@alt=\"Resources\"]")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//div[@id='tabs']")));
-
-        seleniumDriver.findElement(
-                By.xpath("//*[@id=\"users-contain\"]//*[div=\"ws-target-resource-delete\"]/../td[6]/div/span[13]/a"))
-                .click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//iframe")));
-        seleniumDriver.switchTo().frame(0);
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//form/div[3]/div/span/div/div/div/label[text()='Name']")));
-
-        seleniumDriver.findElement(By.xpath("//li[4]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//span[text()='endpoint']")));
-
-        seleniumDriver.findElement(By.xpath("//div[2]/form/div[3]/div[4]/span/span/div[2]/a")).click();
-
-        wait.until(ExpectedConditions.presenceOfElementLocated(
-                By.xpath("//div/ul/li/span[contains(text(), 'Successful connection')]")));
-
-        seleniumDriver.switchTo().defaultContent();
-    }
-}