[
https://issues.jboss.org/browse/ARQGRA-384?page=com.atlassian.jira.plugin...
]
Karel Piwko commented on ARQGRA-384:
------------------------------------
I was able to get more information by enabling "-e debug true" for WebDriver
package:
{code}
LOGCAT: I/AndroidWebDriver( 775): Executing: [get:
http://10.34.130.169:8080/html5-demoapp/] at URL:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd/url)
LOGCAT: I/AndroidWebDriver( 775): Done:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd/url
LOGCAT: I/AndroidWebDriver( 775): Executing: [get:
http://10.34.130.169:8080/html5-demoapp/] at URL:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd/url)
LOGCAT: I/AndroidWebDriver( 775): Done:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd/url
LOGCAT: I/AndroidWebDriver( 775): Executing: [find element: By.id: addMember] at URL:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd/element)
LOGCAT: I/dalvikvm-heap( 775): Grow heap (frag case) to 11.605MB for 131080-byte
allocation
LOGCAT: I/dalvikvm-heap( 775): Grow heap (frag case) to 11.716MB for 131112-byte
allocation
LOGCAT: I/dalvikvm-heap( 775): Grow heap (frag case) to 11.914MB for 196664-byte
allocation
LOGCAT: I/dalvikvm-heap( 775): Grow heap (frag case) to 12.214MB for 196664-byte
allocation
LOGCAT: I/AndroidWebDriver( 775): Done:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd/element
(E) TestResult
(E) After
(I) TestContextHandler.createSuiteContext
(I) TestContextHandler.createClassContext
(E) TestClass
(I) TestContextHandler.createTestContext
(I) ContainerEventController.createAfterContext
(I) CreationalContextDestroyer.destory
(O) ClientBeforeAfterLifecycleEventExecuter.on
(O) DroneDestructor.destroyMethodScopedDrone
(E) AfterClass
(I) TestContextHandler.createSuiteContext
(I) TestContextHandler.createClassContext
(E) TestClass
(O) ClientBeforeAfterLifecycleEventExecuter.on
(O) DroneDestructor.destroyClassScopedDrone
(E) DroneLifecycleEvent
(O) DroneEnhancer.deenhanceDrone
(E) DroneEnhancementEvent
(E) DroneEnhancementEvent
LOGCAT: I/AndroidWebDriver( 775): Executing: [is displayed: 0
org.openqa.selenium.android.library.AndroidWebElement@c2c4fbe9] at URL:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd/element/0/displayed)
LOGCAT: I/AndroidWebDriver( 775): Executing: [delete session:
c1d5db55-a2da-42e2-b8c0-fbca4ab388bd] at URL:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd)
LOGCAT: I/AndroidWebDriver( 775): Done: /session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd
LOGCAT: E/webview ( 775): Error: WebView.destroy() called while still attached!
(E) DroneLifecycleEvent
(O) ContainerEventController.execute
(E) ContainerMultiControlEvent
(O) ContainerDeployController.undeployManaged
(E) UnDeployDeployment
(I) ContainerDeploymentContextHandler.createContainerContext
(I) ContainerDeploymentContextHandler.createDeploymentContext
(O) ContainerDeployController.undeploy
(E) BeforeUnDeploy
LOGCAT: I/AndroidWebDriver( 775): Done:
/session/c1d5db55-a2da-42e2-b8c0-fbca4ab388bd/element/0/displayed
(E) AfterUnDeploy
(O) ServerSetupObserver.handleAfterUndeploy
(E) ContainerMultiControlEvent
(O) ContainerLifecycleController.stopManualContainers
(E) ContainerMultiControlEvent
(O) ContainerLifecycleController.stopClassContainers
(O) ServerSetupObserver.afterTestClass
(O) GrapheneConfigurator.unconfigureGraphene
(E) GrapheneUnconfigured
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 56.25 sec <<<
FAILURE!
addUser(com.acme.example.test.DroneTest) Time elapsed: 13.342 sec <<< ERROR!
org.openqa.selenium.WebDriverException: Returned value cannot be converted to Boolean:
[org.openqa.selenium.remote.RemoteWebElement@30 -> unknown locator]
Build info: version: '2.35.0', revision:
'8df0c6bedf70ff9f22c647788f9fe9c8d22210e2', time: '2013-08-17 12:46:41'
System info: os.name: 'Linux', os.arch: 'amd64', os.version:
'2.6.32-358.18.1.el6.x86_64', java.version: '1.7.0_25'
Driver info: driver.version: unknown
at
org.openqa.selenium.remote.RemoteWebElement.isDisplayed(RemoteWebElement.java:323)
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:606)
at
org.jboss.arquillian.graphene.proxy.GrapheneProxyHandler.invokeReal(GrapheneProxyHandler.java:130)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:159)
at
org.jboss.arquillian.graphene.enricher.StaleElementInterceptor$1.apply(StaleElementInterceptor.java:48)
at
org.jboss.arquillian.graphene.enricher.StaleElementInterceptor$1.apply(StaleElementInterceptor.java:44)
at org.openqa.selenium.support.ui.FluentWait$1.apply(FluentWait.java:177)
at org.openqa.selenium.support.ui.FluentWait$1.apply(FluentWait.java:175)
at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:208)
at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:175)
at
org.jboss.arquillian.graphene.wait.WebDriverWaitImpl.until(WebDriverWaitImpl.java:87)
at
org.jboss.arquillian.graphene.enricher.StaleElementInterceptor.intercept(StaleElementInterceptor.java:44)
at
org.jboss.arquillian.graphene.proxy.InvocationContextImpl.invoke(InvocationContextImpl.java:87)
at
org.jboss.arquillian.graphene.intercept.InterceptorBuilder$2.intercept(InterceptorBuilder.java:139)
at
org.jboss.arquillian.graphene.proxy.InvocationContextImpl.invoke(InvocationContextImpl.java:87)
at
org.jboss.arquillian.graphene.enricher.SearchContextInterceptor.intercept(SearchContextInterceptor.java:50)
at
org.jboss.arquillian.graphene.proxy.InvocationContextImpl.invoke(InvocationContextImpl.java:87)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$2.call(GrapheneContextualHandler.java:209)
at
org.jboss.arquillian.graphene.context.BrowserActions.performAction(BrowserActions.java:62)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler.invoke(GrapheneContextualHandler.java:205)
at com.sun.proxy.$Proxy36.isDisplayed(Unknown Source)
at
org.openqa.selenium.support.ui.ExpectedConditions.elementIfVisible(ExpectedConditions.java:228)
at
org.openqa.selenium.support.ui.ExpectedConditions.access$100(ExpectedConditions.java:39)
at
org.openqa.selenium.support.ui.ExpectedConditions$7.apply(ExpectedConditions.java:213)
at
org.openqa.selenium.support.ui.ExpectedConditions$7.apply(ExpectedConditions.java:210)
at
org.jboss.arquillian.graphene.condition.BooleanConditionWrapper.apply(BooleanConditionWrapper.java:61)
at
org.jboss.arquillian.graphene.condition.BooleanConditionWrapper.apply(BooleanConditionWrapper.java:37)
at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:208)
at
org.jboss.arquillian.graphene.wait.WebDriverWaitImpl.until(WebDriverWaitImpl.java:102)
at
org.jboss.arquillian.graphene.wait.WebDriverWaitImpl.commit(WebDriverWaitImpl.java:110)
at
org.jboss.arquillian.graphene.wait.IsNotElementBuilderImpl.visible(IsNotElementBuilderImpl.java:57)
at com.acme.example.test.AddMemberPage.addNewMember(AddMemberPage.java:37)
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:606)
at
org.jboss.arquillian.graphene.proxy.GrapheneProxyHandler.invokeReal(GrapheneProxyHandler.java:130)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:159)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$2.call(GrapheneContextualHandler.java:209)
at
org.jboss.arquillian.graphene.context.BrowserActions.performAction(BrowserActions.java:62)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler.invoke(GrapheneContextualHandler.java:205)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler.intercept(GrapheneContextualHandler.java:229)
at
com.acme.example.test.AddMemberPage$$EnhancerByGraphene$$b4de689c.addNewMember(<generated>)
at com.acme.example.test.DroneTest.addUser(DroneTest.java:26)
{code}
Still, it does not look clear what was actual problem.
element().is().visible() prematurely exits with exception on Android
--------------------------------------------------------------------
Key: ARQGRA-384
URL:
https://issues.jboss.org/browse/ARQGRA-384
Project: Arquillian Graphene
Issue Type: Bug
Components: core
Affects Versions: 2.0.0.CR1
Reporter: Karel Piwko
Fix For: 2.0.0.Final
When using following call using Graphene and AndroidDriver, it often fails with an
exception on Android:
{code}
waitGui().withMessage("Add member button is not yet
present.").until().element(addMemberBtn).is().visible();
{code}
{code}
addUser(com.acme.example.test.DroneTest) Time elapsed: 8.491 sec <<< ERROR!
org.openqa.selenium.WebDriverException: Returned value cannot be converted to Boolean:
[org.openqa.selenium.remote.RemoteWebElement@30 -> unknown locator]
Build info: version: '2.35.0', revision:
'8df0c6bedf70ff9f22c647788f9fe9c8d22210e2', time: '2013-08-17 12:46:41'
System info: os.name: 'Linux', os.arch: 'amd64', os.version:
'2.6.32-358.18.1.el6.x86_64', java.version: '1.7.0_25'
Driver info: driver.version: unknown
at org.openqa.selenium.remote.RemoteWebElement.isDisplayed(RemoteWebElement.java:323)
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:606)
at
org.jboss.arquillian.graphene.proxy.GrapheneProxyHandler.invokeReal(GrapheneProxyHandler.java:130)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:159)
at
org.jboss.arquillian.graphene.enricher.SearchContextInterceptor.intercept(SearchContextInterceptor.java:50)
at
org.jboss.arquillian.graphene.proxy.InvocationContextImpl.invoke(InvocationContextImpl.java:87)
at
org.jboss.arquillian.graphene.enricher.StaleElementInterceptor$1.apply(StaleElementInterceptor.java:48)
at
org.jboss.arquillian.graphene.enricher.StaleElementInterceptor$1.apply(StaleElementInterceptor.java:44)
at org.openqa.selenium.support.ui.FluentWait$1.apply(FluentWait.java:177)
at org.openqa.selenium.support.ui.FluentWait$1.apply(FluentWait.java:175)
at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:208)
at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:175)
at
org.jboss.arquillian.graphene.wait.WebDriverWaitImpl.until(WebDriverWaitImpl.java:87)
at
org.jboss.arquillian.graphene.enricher.StaleElementInterceptor.intercept(StaleElementInterceptor.java:44)
at
org.jboss.arquillian.graphene.proxy.InvocationContextImpl.invoke(InvocationContextImpl.java:87)
at
org.jboss.arquillian.graphene.intercept.InterceptorBuilder$2.intercept(InterceptorBuilder.java:139)
at
org.jboss.arquillian.graphene.proxy.InvocationContextImpl.invoke(InvocationContextImpl.java:87)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$2.call(GrapheneContextualHandler.java:209)
at
org.jboss.arquillian.graphene.context.BrowserActions.performAction(BrowserActions.java:62)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler.invoke(GrapheneContextualHandler.java:205)
at com.sun.proxy.$Proxy37.isDisplayed(Unknown Source)
at
org.openqa.selenium.support.ui.ExpectedConditions.elementIfVisible(ExpectedConditions.java:228)
at
org.openqa.selenium.support.ui.ExpectedConditions.access$100(ExpectedConditions.java:39)
at
org.openqa.selenium.support.ui.ExpectedConditions$7.apply(ExpectedConditions.java:213)
at
org.openqa.selenium.support.ui.ExpectedConditions$7.apply(ExpectedConditions.java:210)
at
org.jboss.arquillian.graphene.condition.BooleanConditionWrapper.apply(BooleanConditionWrapper.java:61)
at
org.jboss.arquillian.graphene.condition.BooleanConditionWrapper.apply(BooleanConditionWrapper.java:37)
at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:208)
at
org.jboss.arquillian.graphene.wait.WebDriverWaitImpl.until(WebDriverWaitImpl.java:102)
at
org.jboss.arquillian.graphene.wait.WebDriverWaitImpl.commit(WebDriverWaitImpl.java:110)
at
org.jboss.arquillian.graphene.wait.IsNotElementBuilderImpl.visible(IsNotElementBuilderImpl.java:57)
at com.acme.example.test.AddMemberPage.addNewMember(AddMemberPage.java:38)
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:606)
at
org.jboss.arquillian.graphene.proxy.GrapheneProxyHandler.invokeReal(GrapheneProxyHandler.java:130)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:159)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$2.call(GrapheneContextualHandler.java:209)
at
org.jboss.arquillian.graphene.context.BrowserActions.performAction(BrowserActions.java:62)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler.invoke(GrapheneContextualHandler.java:205)
at
org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler.intercept(GrapheneContextualHandler.java:229)
at
com.acme.example.test.AddMemberPage$$EnhancerByGraphene$$75cffd91.addNewMember(<generated>)
at com.acme.example.test.DroneTest.addUser(DroneTest.java:25)
{code}
This looks like that visibility checker should ignore this exception, as element is in
intermediate state at this moment.
--
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