You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by an...@apache.org on 2014/05/15 15:47:34 UTC
svn commit: r1594915 - in /syncope/branches/1_1_X: ./ console/
console/src/test/java/org/apache/syncope/console/
Author: andreapatricelli
Date: Thu May 15 13:47:33 2014
New Revision: 1594915
URL: http://svn.apache.org/r1594915
Log:
[SYNCOPE-486] updated Selenium version to 2.41.0, changed console IT tests accordingly (selenium-maven-plugin no more used)
Modified:
syncope/branches/1_1_X/console/pom.xml
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/AbstractTest.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConfigurationTestITCase.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConnInstanceTestITCase.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/EditProfileTestITCase.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ReportTestITCase.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ResourceTestITCase.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/RoleTestITCase.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/SchemaTestITCase.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/TaskTestITCase.java
syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/UserTestITCase.java
syncope/branches/1_1_X/pom.xml
Modified: syncope/branches/1_1_X/console/pom.xml
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/pom.xml?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/pom.xml (original)
+++ syncope/branches/1_1_X/console/pom.xml Thu May 15 13:47:33 2014
@@ -139,12 +139,24 @@ under the License.
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
+ <!-- SELENIUM INTEGRATION TEST -->
<dependency>
- <groupId>org.seleniumhq.selenium.client-drivers</groupId>
- <artifactId>selenium-java-client-driver</artifactId>
+ <groupId>org.seleniumhq.selenium</groupId>
+ <artifactId>selenium-java</artifactId>
<scope>test</scope>
</dependency>
<dependency>
+ <groupId>org.seleniumhq.selenium</groupId>
+ <artifactId>selenium-api</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.seleniumhq.selenium</groupId>
+ <artifactId>selenium-support</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <!-- /SELENIUM INTEGRATION TEST -->
+ <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<scope>test</scope>
@@ -608,32 +620,6 @@ under the License.
<plugins>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>selenium-maven-plugin</artifactId>
- <inherited>true</inherited>
- <executions>
- <execution>
- <id>start-selenium</id>
- <phase>pre-integration-test</phase>
- <goals>
- <goal>start-server</goal>
- </goals>
- <configuration>
- <background>true</background>
- <logOutput>true</logOutput>
- </configuration>
- </execution>
- <execution>
- <id>stop-selenium</id>
- <phase>post-integration-test</phase>
- <goals>
- <goal>stop-server</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<inherited>true</inherited>
@@ -664,7 +650,7 @@ under the License.
</execution>
<execution>
<id>stop-container</id>
- <phase>post-integratison-test</phase>
+ <phase>post-integration-test</phase>
<goals>
<goal>stop</goal>
</goals>
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/AbstractTest.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/AbstractTest.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/AbstractTest.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/AbstractTest.java Thu May 15 13:47:33 2014
@@ -18,10 +18,14 @@
*/
package org.apache.syncope.console;
-import com.thoughtworks.selenium.SeleneseTestCase;
+import com.thoughtworks.selenium.Selenium;
+import com.thoughtworks.selenium.webdriven.WebDriverBackedSelenium;
+import junit.framework.TestCase;
import org.junit.After;
import org.junit.Before;
import org.junit.runner.RunWith;
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.firefox.FirefoxDriver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.test.context.ContextConfiguration;
@@ -29,7 +33,7 @@ import org.springframework.test.context.
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:applicationContext.xml"})
-public abstract class AbstractTest extends SeleneseTestCase {
+public abstract class AbstractTest extends TestCase {
/**
* Logger.
@@ -42,10 +46,17 @@ public abstract class AbstractTest exten
protected static final String BASE_URL = "http://localhost:9080/syncope-console/";
+ protected Selenium selenium;
+
+ protected WebDriver seleniumDriver;
+
@Override
@Before
public void setUp() throws Exception {
- super.setUp(BASE_URL, "*firefox");
+ super.setUp();
+
+ seleniumDriver = new FirefoxDriver();
+ selenium = new WebDriverBackedSelenium(seleniumDriver, BASE_URL);
selenium.open("/syncope-console/");
selenium.type("name=userId", ADMIN);
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConfigurationTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConfigurationTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConfigurationTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConfigurationTestITCase.java Thu May 15 13:47:33 2014
@@ -32,10 +32,15 @@ public class ConfigurationTestITCase ext
selenium.waitForCondition("selenium.isElementPresent(\"//input[@name='key:textField']\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.type("name=key:textField", "test1");
selenium.type("name=value:textField", "value1");
selenium.click("name=apply");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.waitForCondition("selenium.isTextPresent(\"Operation executed successfully\");", "30000");
}
@@ -65,9 +70,14 @@ public class ConfigurationTestITCase ext
selenium.waitForCondition("selenium.isElementPresent(\"//input[@name='id:textField']\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.type("name=description:textField", "new description");
selenium.click("//div[2]/form/div[3]/input[@type='submit']");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.waitForCondition("selenium.isTextPresent(\"new description\");", "30000");
}
@@ -101,7 +111,7 @@ public class ConfigurationTestITCase ext
selenium.waitForCondition("selenium.isElementPresent(\"//div[@id='tabs']\");", "30000");
- selenium.click("//div[@id='logs']/ul/li/a/span");
+ selenium.click("//div[@id='tabs']/ul/li[5]/a");
selenium.select("//div[@id='core']/div/span/table/tbody/tr/td[2]/select", "label=ERROR");
@@ -114,11 +124,18 @@ public class ConfigurationTestITCase ext
selenium.waitForCondition("selenium.isElementPresent(\"//div[@id='tabs']\");", "30000");
+ selenium.click("//div[@id='tabs']/ul/li[3]/a");
+
selenium.click("//a[contains(text(),'Create new notification')]");
selenium.waitForCondition("selenium.isElementPresent("
+ "\"//div[2]/form/div[3]/div/div/div/div/label\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//input[@name='sender:textField']\");", "30000");
+
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.type("name=sender:textField", "test@syncope.it");
selenium.type("name=sender:textField", "test@syncope.it");
@@ -134,10 +151,10 @@ public class ConfigurationTestITCase ext
selenium.select("//div[2]/form/div[3]/div/div/div[6]/div[2]/span/select", "label=ALL");
- selenium.click("//div[2]/form/div[3]/ul/li[2]/a/span");
-
selenium.click("//div[2]/form/div[3]/ul/li[3]/a/span");
+ selenium.click("//div[2]/form/div[3]/ul/li[2]/a/span");
+
selenium.waitForCondition("selenium.isElementPresent(\""
+ "//select[@name='eventSelection:categoryContainer:type:dropDownChoiceField']"
+ "/option[text()='PROPAGATION']\");",
@@ -177,6 +194,8 @@ public class ConfigurationTestITCase ext
+ "\"//div[2]/form/div[3]/div[4]/div/div[2]/label\");", "30000");
selenium.click("//div[2]/form/div[4]/input");
+
+ seleniumDriver.switchTo().defaultContent();
}
@Test
@@ -189,6 +208,11 @@ public class ConfigurationTestITCase ext
selenium.waitForCondition("selenium.isElementPresent(\"//input[@name='key:textField']\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.keyPressNative("27");
+
+ seleniumDriver.switchTo().defaultContent();
}
}
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConnInstanceTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConnInstanceTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConnInstanceTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ConnInstanceTestITCase.java Thu May 15 13:47:33 2014
@@ -28,10 +28,16 @@ public class ConnInstanceTestITCase exte
selenium.waitForCondition("selenium.isElementPresent(\"//div[@id='tabs']\");", "30000");
+ selenium.click("//div[@id='tabs']/ul/li[2]/a");
+
selenium.click("//div[3]/div[2]/a");
selenium.waitForCondition(
"selenium.isElementPresent(\"//form/div[2]/div/div/div[3]/div[2]/span/select\");", "30000");
+
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.select("//select[@name='location:dropDownChoiceField']", "value=0");
selenium.waitForCondition(
@@ -45,6 +51,8 @@ public class ConnInstanceTestITCase exte
assertTrue(selenium.isElementPresent("//form/div[2]/div/div/div[3]/div[2]/"));
+ seleniumDriver.switchTo().defaultContent();
+
selenium.click("css=a.w_close");
}
@@ -60,12 +68,18 @@ public class ConnInstanceTestITCase exte
selenium.waitForCondition(
"selenium.isElementPresent(\"//div[2]/form/div[2]/div/div/div[3]/div[2]/span/select\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
assertEquals("ConnInstance103", selenium.getAttribute("//input[@name='displayName:textField']/@value"));
assertEquals("org.connid.bundles.soap",
selenium.getSelectedLabel("//select[@name='connectorName:dropDownChoiceField']"));
selenium.click("//div[2]/form/div[2]/ul/li[2]/a/span");
+
+ seleniumDriver.switchTo().defaultContent();
+
selenium.click("css=a.w_close");
}
@@ -95,6 +109,9 @@ public class ConnInstanceTestITCase exte
selenium.waitForCondition(
"selenium.isElementPresent(\"//select[@name='version:dropDownChoiceField']\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.click("//div[2]/form/div[2]/ul/li[2]/a");
selenium.waitForCondition(
@@ -104,5 +121,7 @@ public class ConnInstanceTestITCase exte
selenium.waitForCondition(
"selenium.isElementPresent(\"//div/ul/li/span[contains(text(),'Successful connection')]\");", "30000");
+
+ seleniumDriver.switchTo().defaultContent();
}
}
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/EditProfileTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/EditProfileTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/EditProfileTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/EditProfileTestITCase.java Thu May 15 13:47:33 2014
@@ -18,28 +18,32 @@
*/
package org.apache.syncope.console;
+import com.thoughtworks.selenium.webdriven.WebDriverBackedSelenium;
+import org.junit.After;
import org.junit.Before;
import org.junit.Test;
+import org.openqa.selenium.firefox.FirefoxDriver;
public class EditProfileTestITCase extends AbstractTest {
@Override
@Before
public void setUp() throws Exception {
- super.setUp(BASE_URL, "*firefox");
+ seleniumDriver = new FirefoxDriver();
+ selenium = new WebDriverBackedSelenium(seleniumDriver, BASE_URL);
+
+ selenium.open("/syncope-console/");
}
@Test
public void selfRegistration() {
- selenium.open("/syncope-console/");
-
selenium.click("//div/span/span/a");
selenium.waitForCondition("selenium.isElementPresent(\"//span[contains(text(),'Attributes')]\");", "30000");
selenium.click("css=a.w_close");
- // only to have some "Logout" availabe for @After
+ // only to have some "Logout" available for @After
selenium.type("name=userId", "rossini");
selenium.type("name=password", "password");
selenium.click("name=:submit");
@@ -49,7 +53,6 @@ public class EditProfileTestITCase exten
@Test
public void editUserProfile() {
- selenium.open("/syncope-console/");
selenium.type("name=userId", "rossini");
selenium.type("name=password", "password");
selenium.click("name=:submit");
@@ -65,4 +68,11 @@ public class EditProfileTestITCase exten
selenium.click("css=a.w_close");
}
+
+ @Override
+ @After
+ public void tearDown() throws Exception {
+ super.tearDown();
+ selenium.stop();
+ }
}
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ReportTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ReportTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ReportTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ReportTestITCase.java Thu May 15 13:47:33 2014
@@ -28,6 +28,10 @@ public class ReportTestITCase extends Ab
selenium.waitForCondition("selenium.isElementPresent(\"//div[@id='tabs']\");", "30000");
selenium.click("//table/tbody/tr/td[8]/div/span[9]/a");
+
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.waitForCondition("selenium.isElementPresent("
+ "\"//div[2]/form/div[2]/div/div/span/div/div/div/span\");", "30000");
@@ -38,13 +42,20 @@ public class ReportTestITCase extends Ab
selenium.select("//div[2]/form/div[2]/div/div/span/div/div[5]/div[2]/div/div/select", "testUserReportlet");
selenium.click("//div[2]/form/div[2]/div/div/span/div/div[5]/div[2]/div[2]/div[2]/a");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.waitForCondition("selenium.isElementPresent("
- + "\"//div[2]/form/div[2]/div/div/div/div/label\");", "30000");
+ + "\"name=reportletClass:dropDownChoiceField\");", "30000");
- selenium.select("//form/div[2]/div/div/div[2]/div[2]/span/select",
- "label=org.apache.syncope.common.report.UserReportletConf");
+ selenium.selectFrame("index=1");
+
+ selenium.select("name=reportletClass:dropDownChoiceField",
+ "org.apache.syncope.common.report.StaticReportletConf");
+
+ selenium.click("//div[2]/form/div[3]/input");
+
+ seleniumDriver.switchTo().defaultContent();
- selenium.click("css=a.w_close");
selenium.click("css=a.w_close");
}
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ResourceTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ResourceTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ResourceTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/ResourceTestITCase.java Thu May 15 13:47:33 2014
@@ -43,19 +43,24 @@ public class ResourceTestITCase extends
selenium.waitForCondition("selenium.isElementPresent(\"//div[@id='tabs']\");", "30000");
selenium.click("//td[6]/div/span[9]/a");
-
+
+ selenium.waitForCondition("selenium.isElementPresent(" + "\"class=wicket_modal\");", "30000");
+ selenium.waitForFrameToLoad("class=wicket_modal", "30000");
+ selenium.selectFrame("index=0");
selenium.waitForCondition("selenium.isElementPresent("
+ "\"//form/div[3]/div/span/div/div/div/label[text()='Name']\");", "30000");
selenium.click("//li[2]/a");
- selenium.waitForCondition("selenium.isElementPresent(" + "\"//tbody/tr\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(" + "\"//tbody/tr[2]/td/input\");", "30000");
selenium.click("//tbody/tr[2]/td/input");
assertTrue(selenium.getConfirmation().equals("Do you really want to delete the selected item(s)?"));
- selenium.click("name=apply");
+ selenium.click("//div[4]/input");
+
+ seleniumDriver.switchTo().defaultContent();
}
@Test
@@ -80,6 +85,9 @@ public class ResourceTestITCase extends
selenium.waitForCondition("selenium.isElementPresent("
+ "\"//form/div[3]/div/span/div/div/div/label[text()='Name']\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.click("//li[4]/a");
assertTrue(selenium.isElementPresent("//label[@for='passwordPolicy']"));
@@ -88,6 +96,8 @@ public class ResourceTestITCase extends
selenium.click("//li[2]/a");
selenium.click("//li[3]/a");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.click("css=a.w_close");
}
@@ -102,7 +112,10 @@ public class ResourceTestITCase extends
selenium.waitForCondition("selenium.isElementPresent("
+ "\"//form/div[3]/div/span/div/div/div/label[text()='Name']\");", "30000");
- selenium.click("//li[3]/a");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
+ selenium.click("//li[4]/a");
selenium.waitForCondition("selenium.isElementPresent(" + "\"//span[text()='endpoint']\");", "30000");
@@ -110,5 +123,7 @@ public class ResourceTestITCase extends
selenium.waitForCondition(
"selenium.isElementPresent(\"//div/ul/li/span[contains(text(), 'Successful connection')]\");", "30000");
+
+ seleniumDriver.switchTo().defaultContent();
}
}
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/RoleTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/RoleTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/RoleTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/RoleTestITCase.java Thu May 15 13:47:33 2014
@@ -49,13 +49,13 @@ public class RoleTestITCase extends Abst
selenium.click("//div/div/span/div/div/div/div/div[2]/div/div/span/a");
- selenium.waitForCondition("selenium.isElementPresent(\"css=img[title='Create']\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//img[@alt='create icon']\");", "30000");
- selenium.click("css=img[title='Create']");
+ selenium.click("//img[@alt='create icon']");
selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
- selenium.selectFrame("relative=up");
+ selenium.selectFrame("index=0");
selenium.waitForCondition("selenium.isElementPresent(\"//div[2]/form/div[3]/div/ul/li[1]/a/span\");", "30000");
@@ -66,6 +66,8 @@ public class RoleTestITCase extends Abst
selenium.click("//div[2]/form/div[3]/div/ul/li[5]/a/span");
selenium.click("//div[2]/form/div[3]/div/ul/li[6]/a/span");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.click("css=a.w_close");
}
@@ -77,13 +79,13 @@ public class RoleTestITCase extends Abst
selenium.click("//div/div/span/div/div/div/div/div[2]/div/div/span/a");
- selenium.waitForCondition("selenium.isElementPresent(\"css=img[title='Edit']\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//img[@alt='edit icon']\");", "30000");
- selenium.click("css=img[title='Edit']");
+ selenium.click("//img[@alt='edit icon']");
selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
- selenium.selectFrame("relative=up");
+ selenium.selectFrame("index=0");
selenium.waitForCondition("selenium.isElementPresent(\"//div[2]/form/div[3]/div/ul/li[1]/a/span\");", "30000");
@@ -94,6 +96,8 @@ public class RoleTestITCase extends Abst
selenium.click("//div[2]/form/div[3]/div/ul/li[6]/a/span");
selenium.click("//div[2]/form/div[3]/div/ul/li[7]/a/span");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.click("css=a.w_close");
}
@@ -166,9 +170,9 @@ public class RoleTestITCase extends Abst
selenium.click(
"//div/div/span/div/div/div/div/div[2]/div[2]/div[2]/div/div[2]/div[3]/div/span[2]/a/span");
- selenium.waitForCondition("selenium.isElementPresent(\"css=img[title='Delete']\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//img[@alt='delete icon']\");", "30000");
- selenium.click("css=img[title='Delete']");
+ selenium.click("//img[@alt='delete icon']");
assertTrue(selenium.getConfirmation().equals("Do you really want to delete the selected item(s)?"));
}
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/SchemaTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/SchemaTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/SchemaTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/SchemaTestITCase.java Thu May 15 13:47:33 2014
@@ -35,10 +35,14 @@ public class SchemaTestITCase extends Ab
selenium.waitForCondition("selenium.isElementPresent(" + "\"//*[@name='name:textField']\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.select("name=type:dropDownChoiceField", "value=0");
selenium.type("name=name:textField", "newschema");
selenium.click("name=apply");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.waitForCondition("selenium.isTextPresent(\"newschema\");", "30000");
}
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/TaskTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/TaskTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/TaskTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/TaskTestITCase.java Thu May 15 13:47:33 2014
@@ -28,17 +28,31 @@ public class TaskTestITCase extends Abst
selenium.waitForCondition("selenium.isElementPresent(\"//div[@id='tabs']\");", "30000");
- selenium.click("//div[@id='tabs']/ul/li[4]/a");
- selenium.click("//*[div=1]/../td[10]/div/span[3]/a");
+ selenium.click("//div[@id='tabs']/ul/li[1]/a");
+
+ selenium.waitForCondition("selenium.isElementPresent("
+ + "\"//tr[4]/td[10]/div/span[3]/a/img\");", "30000");
+
+ selenium.click("//tr[4]/td[10]/div/span[3]/a/img");
selenium.waitForCondition("selenium.isTextPresent(" + "\"Operation executed successfully\");", "30000");
- selenium.click("//*[div=1]/../td[10]/div/span[9]/a");
+ selenium.waitForCondition("selenium.isElementPresent("
+ + "\"//tr[4]/td[10]/div/span[9]/a/img\");", "30000");
+
+ selenium.click("//tr[4]/td[10]/div/span[9]/a/img");
+
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
selenium.waitForCondition("selenium.isElementPresent("
- + "\"//form/div[2]/div/div/span/div/div/div[2]/span/input\");", "30000");
+ + "\"//div[2]/form/div[2]/ul/li[2]/a\");", "30000");
- assertTrue(selenium.isElementPresent("//form/div[2]/div[2]/span/table/tbody/tr[2]/td"));
+ selenium.click("//div[2]/form/div[2]/ul/li[2]/a");
+
+ assertTrue(selenium.isElementPresent("//div[2]/form/div[2]/div[2]/span/table/tbody/tr[2]/td[2]"));
+
+ seleniumDriver.switchTo().defaultContent();
selenium.click("css=a.w_close");
}
@@ -49,10 +63,11 @@ public class TaskTestITCase extends Abst
selenium.waitForCondition("selenium.isElementPresent(\"//div[@id='tabs']\");", "30000");
- selenium.click("//div[@id='tabs']/ul/li[3]/a/span");
- selenium.click("//table/tbody/tr/td[8]/div/span[11]/a");
+ selenium.click("//div[@id='tabs']/ul/li[3]/a");
- assertTrue(selenium.getConfirmation().equals("Do you really want to delete the selected item(s)?"));
+ selenium.waitForCondition("selenium.isElementPresent(\"xpath=(//img[@alt='delete icon'])[6]\");", "30000");
+
+ selenium.click("xpath=(//img[@alt='delete icon'])[6]"); //
selenium.waitForCondition("selenium.isTextPresent(\"Operation executed successfully\");", "30000");
}
@@ -69,8 +84,12 @@ public class TaskTestITCase extends Abst
selenium.waitForCondition(
"selenium.isElementPresent(\"//div[2]/form/div[2]/div/div/span/div/div[2]/div/label\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.click("//div[2]/form/div[3]/input[2]");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.waitForCondition("selenium.isTextPresent(\"Id\");", "30000");
}
}
Modified: syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/UserTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/UserTestITCase.java?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/UserTestITCase.java (original)
+++ syncope/branches/1_1_X/console/src/test/java/org/apache/syncope/console/UserTestITCase.java Thu May 15 13:47:33 2014
@@ -31,6 +31,9 @@ public class UserTestITCase extends Abst
selenium.click("//a[contains(text(),'Create new user')]");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.waitForCondition("selenium.isElementPresent("
+ "\"//span[contains(text(),'Attributes')]\");", "30000");
@@ -39,6 +42,9 @@ public class UserTestITCase extends Abst
selenium.click("//div[@id='tabs']/ul/li[4]/a/span");
selenium.click("//div[@id='tabs']/ul/li[5]/a/span");
selenium.click("//div[@id='tabs']/ul/li[6]/a/span");
+
+ seleniumDriver.switchTo().defaultContent();
+
selenium.click("css=a.w_close");
}
@@ -52,6 +58,9 @@ public class UserTestITCase extends Abst
//Edit vivaldi
selenium.click("//*[@id=\"users-contain\"]//*[div=3]/../td[5]/div/span[9]/a");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.waitForCondition("selenium.isElementPresent(" + "\"//input[@value='Antonio Vivaldi']\");", "30000");
selenium.waitForCondition("selenium.isElementPresent(" + "\"//input[@value='Vivaldi']\");", "30000");
@@ -61,6 +70,9 @@ public class UserTestITCase extends Abst
selenium.click("//div[@id='tabs']/ul/li[4]/a/span");
selenium.click("//div[@id='tabs']/ul/li[5]/a/span");
selenium.click("//div[@id='tabs']/ul/li[6]/a/span");
+
+ seleniumDriver.switchTo().defaultContent();
+
selenium.click("css=a.w_close");
}
@@ -77,7 +89,7 @@ public class UserTestITCase extends Abst
+ "\"//td[4]/select[option='3 citizen']\");", "30000");
selenium.select("//td[4]/select", "label=3 citizen");
- selenium.click("name=search");
+ selenium.click("//form/a");
selenium.waitForCondition(
"selenium.isElementPresent(\"//*[@id='users-contain']//*[div=2]\");", "30000");
@@ -95,8 +107,13 @@ public class UserTestITCase extends Abst
selenium.waitForCondition("selenium.isElementPresent(" + "\"//div[@id='propagation']/span\");", "30000");
+ selenium.waitForCondition("selenium.isElementPresent(\"//iframe\");", "30000");
+ selenium.selectFrame("index=0");
+
selenium.click("//*[@id=\"users-contain\"]/a");
+ seleniumDriver.switchTo().defaultContent();
+
selenium.waitForCondition("selenium.isTextPresent(" + "\"Operation executed successfully\");", "30000");
}
}
Modified: syncope/branches/1_1_X/pom.xml
URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/pom.xml?rev=1594915&r1=1594914&r2=1594915&view=diff
==============================================================================
--- syncope/branches/1_1_X/pom.xml (original)
+++ syncope/branches/1_1_X/pom.xml Thu May 15 13:47:33 2014
@@ -346,7 +346,7 @@ under the License.
<slf4j.version>1.7.7</slf4j.version>
<junit.version>4.11</junit.version>
- <selenium-java-client-driver.version>1.0.2</selenium-java-client-driver.version>
+ <selenium-version>2.41.0</selenium-version>
<apacheds.version>1.5.7</apacheds.version>
@@ -856,16 +856,32 @@ under the License.
</dependency>
<!-- TEST -->
+
+ <!-- SELENIUM INTEGRATION TEST -->
<dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>${junit.version}</version>
+ <groupId>org.seleniumhq.selenium</groupId>
+ <artifactId>selenium-api</artifactId>
+ <version>${selenium-version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.seleniumhq.selenium</groupId>
+ <artifactId>selenium-java</artifactId>
+ <version>${selenium-version}</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.seleniumhq.selenium.client-drivers</groupId>
- <artifactId>selenium-java-client-driver</artifactId>
- <version>${selenium-java-client-driver.version}</version>
+ <groupId>org.seleniumhq.selenium</groupId>
+ <artifactId>selenium-support</artifactId>
+ <version>${selenium-version}</version>
+ <scope>test</scope>
+ </dependency>
+ <!-- /SELENIUM INTEGRATION TEST -->
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>