You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by as...@apache.org on 2018/08/23 13:46:00 UTC
portals-pluto git commit: PLUTO-730 Selenium WebDriverException
thrown by TCKSimpleTestDriver (specify -Dtest.scroll=true on the command line
to enable)
Repository: portals-pluto
Updated Branches:
refs/heads/master e5e7f2709 -> 8845b9fe3
PLUTO-730 Selenium WebDriverException thrown by TCKSimpleTestDriver (specify -Dtest.scroll=true on the command line to enable)
Project: http://git-wip-us.apache.org/repos/asf/portals-pluto/repo
Commit: http://git-wip-us.apache.org/repos/asf/portals-pluto/commit/8845b9fe
Tree: http://git-wip-us.apache.org/repos/asf/portals-pluto/tree/8845b9fe
Diff: http://git-wip-us.apache.org/repos/asf/portals-pluto/diff/8845b9fe
Branch: refs/heads/master
Commit: 8845b9fe30c9a5494a883c34c7e4c2d4af7148c0
Parents: e5e7f27
Author: Neil Griffin <ne...@gmail.com>
Authored: Thu Aug 23 09:40:44 2018 -0400
Committer: Neil Griffin <ne...@gmail.com>
Committed: Thu Aug 23 09:40:44 2018 -0400
----------------------------------------------------------------------
portlet-tck_3.0/README.txt | 6 ++++++
.../portlet/tck/driver/TCKSimpleTestDriver.java | 22 +++++++++++++-------
2 files changed, 21 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/8845b9fe/portlet-tck_3.0/README.txt
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/README.txt b/portlet-tck_3.0/README.txt
index dfe6302..2e81250 100644
--- a/portlet-tck_3.0/README.txt
+++ b/portlet-tck_3.0/README.txt
@@ -213,6 +213,12 @@ the ignore list, set the command line flag 'test.ignore' to false:
mvn test -Prun-tck -Dtest.ignore=false
+Under certain circumstances such as a very fast CPU or a large display size,
+Selenium throws a WebDriverException claiming that a button or link is not
+clickable. If this happens, the window scrolling workarond can be enabled:
+
+mvn test -Prun-tck -Dtest.scroll=true
+
Passing the TCK:
================
http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/8845b9fe/portlet-tck_3.0/driver/src/main/java/javax/portlet/tck/driver/TCKSimpleTestDriver.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/driver/src/main/java/javax/portlet/tck/driver/TCKSimpleTestDriver.java b/portlet-tck_3.0/driver/src/main/java/javax/portlet/tck/driver/TCKSimpleTestDriver.java
index dd03c74..6a75d83 100644
--- a/portlet-tck_3.0/driver/src/main/java/javax/portlet/tck/driver/TCKSimpleTestDriver.java
+++ b/portlet-tck_3.0/driver/src/main/java/javax/portlet/tck/driver/TCKSimpleTestDriver.java
@@ -67,7 +67,7 @@ public class TCKSimpleTestDriver {
protected static String loginUrl, host, port, testFile, browser,
username, usernameId, password, passwordId, testContextBase, module;
protected static int timeout = 3; // for waiting on page load
- protected static boolean useGeneratedUrl = true, debug = false, dryrun = false;
+ protected static boolean useGeneratedUrl = true, debug = false, dryrun = false, scroll;
protected static WebDriver driver;
protected String page, tcName;
@@ -87,6 +87,8 @@ public class TCKSimpleTestDriver {
System.out.println(" TestFile=" + testFile);
module = System.getProperty("test.module");
System.out.println(" Module =" + module);
+ scroll = Boolean.valueOf(System.getProperty("test.scroll"));
+ System.out.println(" Scroll =" + scroll);
String ignoreFile = System.getProperty("test.ignore.list.file");
System.out.println(" Ignore file =" + ignoreFile);
@@ -394,8 +396,10 @@ public class TCKSimpleTestDriver {
}
WebElement wel = wels.get(0);
- JavascriptExecutor javascriptExecutor = (JavascriptExecutor) driver;
- javascriptExecutor.executeScript("window.scrollTo(0, (arguments[0].getBoundingClientRect().top + window.pageYOffset) - (window.innerHeight / 2));", wel);
+ if (scroll) {
+ JavascriptExecutor javascriptExecutor = (JavascriptExecutor) driver;
+ javascriptExecutor.executeScript("window.scrollTo(0, (arguments[0].getBoundingClientRect().top + window.pageYOffset) - (window.innerHeight / 2));", wel);
+ }
wel.click();
WebDriverWait wdw = new WebDriverWait(driver, timeout);
wdw.until(ExpectedConditions.visibilityOfElementLocated(By.name(tcName)));
@@ -495,8 +499,10 @@ public class TCKSimpleTestDriver {
// Click setup link if found
if ((tcels != null) && !tcels.isEmpty()) {
WebElement wel = tcels.get(0);
- JavascriptExecutor javascriptExecutor = (JavascriptExecutor) driver;
- javascriptExecutor.executeScript("window.scrollTo(0, (arguments[0].getBoundingClientRect().top + window.pageYOffset) - (window.innerHeight / 2));", wel);
+ if (scroll) {
+ JavascriptExecutor javascriptExecutor = (JavascriptExecutor) driver;
+ javascriptExecutor.executeScript("window.scrollTo(0, (arguments[0].getBoundingClientRect().top + window.pageYOffset) - (window.innerHeight / 2));", wel);
+ }
wel.click();
debugLines.add(" Clicked setup link.");
@@ -524,8 +530,10 @@ public class TCKSimpleTestDriver {
if (tcels != null && !tcels.isEmpty()) {
WebElement wel = tcels.get(0);
- JavascriptExecutor javascriptExecutor = (JavascriptExecutor) driver;
- javascriptExecutor.executeScript("window.scrollTo(0, (arguments[0].getBoundingClientRect().top + window.pageYOffset) - (window.innerHeight / 2));", wel);
+ if (scroll) {
+ JavascriptExecutor javascriptExecutor = (JavascriptExecutor) driver;
+ javascriptExecutor.executeScript("window.scrollTo(0, (arguments[0].getBoundingClientRect().top + window.pageYOffset) - (window.innerHeight / 2));", wel);
+ }
wel.click();
WebDriverWait wdw = new WebDriverWait(driver, timeout);
wdw.until(ExpectedConditions.visibilityOfElementLocated(By.id(resultId)));