[richfaces-planning-issues] [JBoss JIRA] (RFPL-2718) Migrate Metamer tests for rich:panel

Ján Jamrich (JIRA) jira-events at lists.jboss.org
Mon Feb 4 09:04:51 EST 2013


    [ https://issues.jboss.org/browse/RFPL-2718?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12752033#comment-12752033 ] 

Ján Jamrich commented on RFPL-2718:
-----------------------------------

When add waitings (see patch) before retrieve requestTime element value and set new value into related input - new error (see log) failure reason for (still unreliable no. of failing tests)

{code}
org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"css selector","selector":"[id$=':titleInput']"}
Command duration or timeout: 137 milliseconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: 'dfb1306b85be4934d23c123122e06e602a15e446', revision: 'unknown', time: '2013-01-17 15:05:54'
System info: os.name: 'Linux', os.arch: 'i386', os.version: '3.7.3-101.fc17.i686.PAE', java.version: '1.7.0_04'
Session ID: 7e0ecfc4-a0e6-457c-b20d-f839920d1949
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{platform=LINUX, acceptSslCerts=true, javascriptEnabled=true, browserName=firefox, rotatable=false, locationContextEnabled=true, version=18.0, cssSelectorsEnabled=true, databaseEnabled=true, handlesAlerts=true, browserConnectionEnabled=true, nativeEvents=false, webStorageEnabled=true, applicationCacheEnabled=true, takesScreenshot=true}]
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:187)
	at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145)
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:533)
	at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:302)
	at org.openqa.selenium.remote.RemoteWebDriver.findElementByCssSelector(RemoteWebDriver.java:379)
	at org.openqa.selenium.By$ByCssSelector.findElement(By.java:406)
	at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:294)
	at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.jboss.arquillian.graphene.proxy.GrapheneProxyHandler.invokeReal(GrapheneProxyHandler.java:209)
	at org.jboss.arquillian.graphene.proxy.GrapheneProxyHandler$1.invoke(GrapheneProxyHandler.java:140)
	at org.jboss.arquillian.graphene.proxy.GrapheneProxyHandler.invoke(GrapheneProxyHandler.java:170)
	at $Proxy32.findElement(Unknown Source)
	at org.jboss.arquillian.graphene.enricher.AbstractWebElementEnricher$1.getTarget(AbstractWebElementEnricher.java:50)
	at org.jboss.arquillian.graphene.proxy.GrapheneProxyHandler.invoke(GrapheneProxyHandler.java:125)
	at $Proxy35.copy(Unknown Source)
	at org.richfaces.tests.metamer.ftest.webdriver.MetamerPage.requestTimeWaiting(MetamerPage.java:161)
	at org.richfaces.tests.metamer.ftest.webdriver.MetamerPage.requestTimeChangesWaiting(MetamerPage.java:127)
	at org.richfaces.tests.metamer.ftest.webdriver.MetamerPage.waitRequest(MetamerPage.java:185)
	at org.richfaces.tests.metamer.ftest.webdriver.Attributes.applyText(Attributes.java:157)
	at org.richfaces.tests.metamer.ftest.webdriver.Attributes.setProperty(Attributes.java:125)
	at org.richfaces.tests.metamer.ftest.webdriver.Attributes.set(Attributes.java:64)
	at org.richfaces.tests.metamer.ftest.AbstractWebDriverTest.testHTMLAttribute(AbstractWebDriverTest.java:180)
	at org.richfaces.tests.metamer.ftest.AbstractWebDriverTest.testTitle(AbstractWebDriverTest.java:424)
	at org.richfaces.tests.metamer.ftest.richPanel.TestRichPanel.testTitle(TestRichPanel.java:202)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
	at org.testng.internal.MethodInvocationHelper$1.runTestMethod(MethodInvocationHelper.java:169)
	at org.jboss.arquillian.testng.Arquillian$2.invoke(Arquillian.java:167)
	at org.jboss.arquillian.container.test.impl.execution.LocalTestExecuter.execute(LocalTestExecuter.java:60)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:135)
	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:115)
	at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
	at org.jboss.arquillian.container.test.impl.execution.ClientTestExecuter.execute(ClientTestExecuter.java:53)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
	at org.jboss.arquillian.container.test.impl.client.ContainerEventController.createContext(ContainerEventController.java:142)
	at org.jboss.arquillian.container.test.impl.client.ContainerEventController.createTestContext(ContainerEventController.java:129)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
	at org.jboss.arquillian.test.impl.TestContextHandler.createTestContext(TestContextHandler.java:89)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
	at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:75)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
	at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:60)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:135)
	at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.test(EventTestRunnerAdaptor.java:111)
	at org.jboss.arquillian.testng.Arquillian.run(Arquillian.java:158)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.testng.internal.MethodInvocationHelper.invokeHookable(MethodInvocationHelper.java:181)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:666)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:842)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1166)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109)
	at org.testng.TestRunner.runWorkers(TestRunner.java:1178)
	at org.testng.TestRunner.privateRun(TestRunner.java:757)
	at org.testng.TestRunner.run(TestRunner.java:608)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
	at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
	at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
	at org.testng.SuiteRunner.run(SuiteRunner.java:240)
	at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
	at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
	at org.testng.TestNG.runSuitesSequentially(TestNG.java:1158)
	at org.testng.TestNG.runSuitesLocally(TestNG.java:1083)
	at org.testng.TestNG.run(TestNG.java:999)
	at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:77)
	at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute(TestNGDirectoryTestSuite.java:110)
	at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:106)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: org.openqa.selenium.remote.ErrorHandler$UnknownServerException: Unable to locate element: {"method":"css selector","selector":"[id$=':titleInput']"}
Build info: version: 'dfb1306b85be4934d23c123122e06e602a15e446', revision: 'unknown', time: '2013-01-17 15:05:54'
System info: os.name: 'Linux', os.arch: 'i386', os.version: '3.7.3-101.fc17.i686.PAE', java.version: '1.7.0_04'
Driver info: driver.version: unknown
	at <anonymous class>.FirefoxDriver.prototype.findElementInternal_(file:///tmp/anonymous7840879228172053346webdriver-profile/extensions/fxdriver@googlecode.com/components/driver_component.js:8251)
	at <anonymous class>.FirefoxDriver.prototype.findElement(file:///tmp/anonymous7840879228172053346webdriver-profile/extensions/fxdriver@googlecode.com/components/driver_component.js:8260)
	at <anonymous class>.DelayedCommand.prototype.executeInternal_/h(file:///tmp/anonymous7840879228172053346webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10224)
	at <anonymous class>.DelayedCommand.prototype.executeInternal_(file:///tmp/anonymous7840879228172053346webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10229)
	at <anonymous class>.DelayedCommand.prototype.execute/<(file:///tmp/anonymous7840879228172053346webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10169)

{code}

Patch:
{code}
diff --git a/metamer/ftest/src/test/java/org/richfaces/tests/metamer/ftest/webdriver/Attributes.java b/metamer/ftest/src/test/java/org/richfaces/tests/metamer/ftest/webdriver/Attributes.java
index f881ec5..a55ab19 100644
--- a/metamer/ftest/src/test/java/org/richfaces/tests/metamer/ftest/webdriver/Attributes.java
+++ b/metamer/ftest/src/test/java/org/richfaces/tests/metamer/ftest/webdriver/Attributes.java
@@ -27,6 +27,7 @@ import org.apache.commons.lang.Validate;
 import org.jboss.arquillian.ajocado.dom.Event;
 import org.jboss.arquillian.ajocado.javascript.JavaScript;
 import org.jboss.arquillian.ajocado.locator.JQueryLocator;
+import org.jboss.arquillian.graphene.Graphene;
 import org.jboss.arquillian.graphene.context.GrapheneContext;
 import org.openqa.selenium.By;
 import org.openqa.selenium.JavascriptExecutor;
@@ -146,6 +147,7 @@ public class Attributes<T extends AttributeEnum> {
     private void applyText(String propertyName, String value) {
         WebElement input = WebElementProxyUtils.createProxyForElement(
                 getCssSelectorForProperty(propertyName));
+        Graphene.waitAjax(driver).until(Graphene.element(input).isPresent());
         String text = input.getAttribute("value");
         if (!value.equals(text)) {
             if (!text.isEmpty()) {
diff --git a/metamer/ftest/src/test/java/org/richfaces/tests/metamer/ftest/webdriver/MetamerPage.java b/metamer/ftest/src/test/java/org/richfaces/tests/metamer/ftest/webdriver/MetamerPage.java
index bd1dd6b..fa17116 100644
--- a/metamer/ftest/src/test/java/org/richfaces/tests/metamer/ftest/webdriver/MetamerPage.java
+++ b/metamer/ftest/src/test/java/org/richfaces/tests/metamer/ftest/webdriver/MetamerPage.java
@@ -252,6 +252,7 @@ public class MetamerPage {
         }
 
         protected String getTime() {
+            Graphene.waitAjax().until(Graphene.element(requestTime).isPresent());
             String time = requestTime.getText();
             return time;
         }

{code}
                
> Migrate Metamer tests for rich:panel
> ------------------------------------
>
>                 Key: RFPL-2718
>                 URL: https://issues.jboss.org/browse/RFPL-2718
>             Project: RichFaces Planning
>          Issue Type: Sub-task
>      Security Level: Public(Everyone can see) 
>          Components: QE
>            Reporter: Pavol Pitonak
>            Assignee: Ján Jamrich
>             Fix For: 5.0.0.M1
>
>   Original Estimate: 1 day
>  Remaining Estimate: 1 day
>
> see parent issue for more information

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the richfaces-planning-issues mailing list