[JBoss JIRA] (ARQGRA-449) Graphene can not switch between contexts
by Stefan Miklosovic (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-449?page=com.atlassian.jira.plugin... ]
Stefan Miklosovic commented on ARQGRA-449:
------------------------------------------
[~lfryc]
I put breakpoint here (1) and here (2) and exception is throw here (3). It is one of these below, they are in ancillaryTypes variable on line 166. Do you know how to check it fast? I was not able to dig into it any furter, I was not able to attach sources for that sun.misc proxy generator classes ....
interface org.openqa.selenium.JavascriptExecutor,
interface org.openqa.selenium.ContextAware,
interface org.openqa.selenium.internal.FindsByCssSelector,
interface org.openqa.selenium.WebDriver,
interface org.openqa.selenium.internal.FindsByName,
interface org.openqa.selenium.Rotatable,
interface org.openqa.selenium.interactions.HasInputDevices,
interface org.openqa.selenium.internal.FindsByXPath,
interface org.openqa.selenium.interactions.HasTouchScreen,
interface org.openqa.selenium.internal.FindsByLinkText,
interface io.selendroid.ScreenBrightness,
interface io.selendroid.Configuration,
interface org.openqa.selenium.HasCapabilities,
interface org.openqa.selenium.internal.FindsById,
interface io.selendroid.HasAirplaneMode,
interface org.openqa.selenium.internal.FindsByClassName,
interface io.selendroid.AdbSupport,
interface org.openqa.selenium.TakesScreenshot,
interface org.openqa.selenium.internal.FindsByTagName,
interface org.jboss.arquillian.graphene.proxy.GrapheneProxyInstance
(1) https://github.com/arquillian/arquillian-graphene/blob/master/impl/src/ma...
(2) https://github.com/arquillian/arquillian-graphene/blob/master/impl/src/ma...
(3) https://github.com/arquillian/arquillian-graphene/blob/master/impl/src/ma...
> Graphene can not switch between contexts
> ----------------------------------------
>
> Key: ARQGRA-449
> URL: https://issues.jboss.org/browse/ARQGRA-449
> Project: Arquillian Graphene
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: core
> Affects Versions: 2.0.3.Final
> Reporter: Stefan Miklosovic
>
> This code:
> {code}
> @Test
> public void nativeViewTest()
> {
> driver.switchTo().window("NATIVE_APP");
> }
> {code}
> That window() parameter is Selendroid-related and it has nothing to do with Graphene. Graphene is just not able to handle that.
> It produces this exception:
> {code}
> java.lang.IllegalArgumentException: methods with same signature getContext() but incompatible return types: [class java.lang.String, class org.jboss.arquillian.graphene.context.GrapheneContext]
> at sun.misc.ProxyGenerator.checkReturnTypes(ProxyGenerator.java:686)
> at sun.misc.ProxyGenerator.generateClassFile(ProxyGenerator.java:437)
> at sun.misc.ProxyGenerator.generateProxyClass(ProxyGenerator.java:323)
> at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:636)
> at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:722)
> at org.jboss.arquillian.graphene.proxy.GrapheneProxy.createProxy(GrapheneProxy.java:166)
> at org.jboss.arquillian.graphene.proxy.GrapheneProxy.getProxyForTargetWithInterfaces(GrapheneProxy.java:92)
> at org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:165)
> 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.$Proxy27.window(Unknown Source)
> at org.arquillian.droidium.showcase.hybrid.test01.SelendroidHybridTestAppTestCase.nativeViewTest(SelendroidHybridTestAppTestCase.java:101)
> {code}
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
10 years, 6 months
[JBoss JIRA] (ARQGRA-453) takeOnEveryAction acts only on methods from WebDriver object, add support for PO & PF & WebElement
by Juraj Húska (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-453?page=com.atlassian.jira.plugin... ]
Juraj Húska edited comment on ARQGRA-453 at 6/13/14 7:03 AM:
-------------------------------------------------------------
As we already discuss with [~lfryc], to support this feature, core Graphene would need to implement inheritance of the interceptors.
So for example when you register interceptor on a Page Object it will be propagated to all its {{WebElement}} s and other POs and PFs defined in that parent PO.
was (Author: jhuska):
As we already discuss with [~lfryc], to support this feature, core Graphene would need to implement inheritance of the interceptors. So for example when you register interceptor on a Page Object it will be propagated to all its {{WebElement}} s and other PO and PF.
> takeOnEveryAction acts only on methods from WebDriver object, add support for PO & PF & WebElement
> --------------------------------------------------------------------------------------------------
>
> Key: ARQGRA-453
> URL: https://issues.jboss.org/browse/ARQGRA-453
> Project: Arquillian Graphene
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: core, screenshooter
> Affects Versions: 2.1.0.Alpha1
> Reporter: Juraj Húska
> Assignee: Juraj Húska
>
> {{takeOnEveryAction}} now takes screenshot only when a method on {{WebDriver}} object is invoked.
> To achieve something like visual testing, it would need to support also intercepting methods invoked on:
> * {{WebElement}}
> * Page objects
> * Page fragments
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
10 years, 6 months
[JBoss JIRA] (ARQGRA-453) takeOnEveryAction acts only on methods from WebDriver object, add support for PO & PF & WebElement
by Juraj Húska (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-453?page=com.atlassian.jira.plugin... ]
Juraj Húska updated ARQGRA-453:
-------------------------------
Summary: takeOnEveryAction acts only on methods from WebDriver object, add support for PO & PF & WebElement (was: takeOnEveryAction acts only on methods on WebDriver object, add support for PO & PF & WebElement)
> takeOnEveryAction acts only on methods from WebDriver object, add support for PO & PF & WebElement
> --------------------------------------------------------------------------------------------------
>
> Key: ARQGRA-453
> URL: https://issues.jboss.org/browse/ARQGRA-453
> Project: Arquillian Graphene
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: core, screenshooter
> Affects Versions: 2.1.0.Alpha1
> Reporter: Juraj Húska
> Assignee: Juraj Húska
>
> {{takeOnEveryAction}} now takes screenshot only when a method on {{WebDriver}} object is invoked.
> To achieve something like visual testing, it would need to support also intercepting methods invoked on:
> * {{WebElement}}
> * Page objects
> * Page fragments
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
10 years, 6 months
[JBoss JIRA] (ARQGRA-453) takeOnEveryAction acts only on methods on WebDriver object, add support for PO & PF & WebElement
by Juraj Húska (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-453?page=com.atlassian.jira.plugin... ]
Juraj Húska commented on ARQGRA-453:
------------------------------------
As we already discuss with [~lfryc], to support this feature, core Graphene would need to implement inheritance of the interceptors. So for example when you register interceptor on a Page Object it will be propagated to all its {{WebElement}}s and other PO and PF.
> takeOnEveryAction acts only on methods on WebDriver object, add support for PO & PF & WebElement
> ------------------------------------------------------------------------------------------------
>
> Key: ARQGRA-453
> URL: https://issues.jboss.org/browse/ARQGRA-453
> Project: Arquillian Graphene
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: core, screenshooter
> Affects Versions: 2.1.0.Alpha1
> Reporter: Juraj Húska
>
> {{takeOnEveryAction}} now takes screenshot only when a method on {{WebDriver}} object is invoked.
> To achieve something like visual testing, it would need to support also intercepting methods invoked on:
> * {{WebElement}}
> * Page objects
> * Page fragments
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
10 years, 6 months
[JBoss JIRA] (ARQGRA-453) takeOnEveryAction acts only on methods on WebDriver object, add support for PO & PF & WebElement
by Juraj Húska (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-453?page=com.atlassian.jira.plugin... ]
Juraj Húska edited comment on ARQGRA-453 at 6/13/14 7:02 AM:
-------------------------------------------------------------
As we already discuss with [~lfryc], to support this feature, core Graphene would need to implement inheritance of the interceptors. So for example when you register interceptor on a Page Object it will be propagated to all its {{WebElement}} s and other PO and PF.
was (Author: jhuska):
As we already discuss with [~lfryc], to support this feature, core Graphene would need to implement inheritance of the interceptors. So for example when you register interceptor on a Page Object it will be propagated to all its {{WebElement}}s and other PO and PF.
> takeOnEveryAction acts only on methods on WebDriver object, add support for PO & PF & WebElement
> ------------------------------------------------------------------------------------------------
>
> Key: ARQGRA-453
> URL: https://issues.jboss.org/browse/ARQGRA-453
> Project: Arquillian Graphene
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: core, screenshooter
> Affects Versions: 2.1.0.Alpha1
> Reporter: Juraj Húska
>
> {{takeOnEveryAction}} now takes screenshot only when a method on {{WebDriver}} object is invoked.
> To achieve something like visual testing, it would need to support also intercepting methods invoked on:
> * {{WebElement}}
> * Page objects
> * Page fragments
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
10 years, 6 months
[JBoss JIRA] (ARQGRA-453) takeOnEveryAction acts only on methods on WebDriver object, add support for PO & PF & WebElement
by Juraj Húska (JIRA)
Juraj Húska created ARQGRA-453:
----------------------------------
Summary: takeOnEveryAction acts only on methods on WebDriver object, add support for PO & PF & WebElement
Key: ARQGRA-453
URL: https://issues.jboss.org/browse/ARQGRA-453
Project: Arquillian Graphene
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: screenshooter
Affects Versions: 2.1.0.Alpha1
Reporter: Juraj Húska
{{takeOnEveryAction}} now takes screenshot only when a method on {{WebDriver}} object is invoked.
To achieve something like visual testing, it would need to support also intercepting methods invoked on:
* {{WebElement}}
* Page objects
* Page fragments
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
10 years, 6 months
[JBoss JIRA] (ARQGRA-449) Graphene can not switch between contexts
by Lukáš Fryč (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-449?page=com.atlassian.jira.plugin... ]
Lukáš Fryč commented on ARQGRA-449:
-----------------------------------
Had you chance to try yet, [~smikloso]?
> Graphene can not switch between contexts
> ----------------------------------------
>
> Key: ARQGRA-449
> URL: https://issues.jboss.org/browse/ARQGRA-449
> Project: Arquillian Graphene
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: core
> Affects Versions: 2.0.3.Final
> Reporter: Stefan Miklosovic
>
> This code:
> {code}
> @Test
> public void nativeViewTest()
> {
> driver.switchTo().window("NATIVE_APP");
> }
> {code}
> That window() parameter is Selendroid-related and it has nothing to do with Graphene. Graphene is just not able to handle that.
> It produces this exception:
> {code}
> java.lang.IllegalArgumentException: methods with same signature getContext() but incompatible return types: [class java.lang.String, class org.jboss.arquillian.graphene.context.GrapheneContext]
> at sun.misc.ProxyGenerator.checkReturnTypes(ProxyGenerator.java:686)
> at sun.misc.ProxyGenerator.generateClassFile(ProxyGenerator.java:437)
> at sun.misc.ProxyGenerator.generateProxyClass(ProxyGenerator.java:323)
> at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:636)
> at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:722)
> at org.jboss.arquillian.graphene.proxy.GrapheneProxy.createProxy(GrapheneProxy.java:166)
> at org.jboss.arquillian.graphene.proxy.GrapheneProxy.getProxyForTargetWithInterfaces(GrapheneProxy.java:92)
> at org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:165)
> 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.$Proxy27.window(Unknown Source)
> at org.arquillian.droidium.showcase.hybrid.test01.SelendroidHybridTestAppTestCase.nativeViewTest(SelendroidHybridTestAppTestCase.java:101)
> {code}
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
10 years, 6 months
[JBoss JIRA] (ARQGRA-449) Graphene can not switch between contexts
by Lukáš Fryč (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-449?page=com.atlassian.jira.plugin... ]
Lukáš Fryč updated ARQGRA-449:
------------------------------
Description:
This code:
{code}
@Test
public void nativeViewTest()
{
driver.switchTo().window("NATIVE_APP");
}
{code}
That window() parameter is Selendroid-related and it has nothing to do with Graphene. Graphene is just not able to handle that.
It produces this exception:
{code}
java.lang.IllegalArgumentException: methods with same signature getContext() but incompatible return types: [class java.lang.String, class org.jboss.arquillian.graphene.context.GrapheneContext]
at sun.misc.ProxyGenerator.checkReturnTypes(ProxyGenerator.java:686)
at sun.misc.ProxyGenerator.generateClassFile(ProxyGenerator.java:437)
at sun.misc.ProxyGenerator.generateProxyClass(ProxyGenerator.java:323)
at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:636)
at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:722)
at org.jboss.arquillian.graphene.proxy.GrapheneProxy.createProxy(GrapheneProxy.java:166)
at org.jboss.arquillian.graphene.proxy.GrapheneProxy.getProxyForTargetWithInterfaces(GrapheneProxy.java:92)
at org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:165)
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.$Proxy27.window(Unknown Source)
at org.arquillian.droidium.showcase.hybrid.test01.SelendroidHybridTestAppTestCase.nativeViewTest(SelendroidHybridTestAppTestCase.java:101)
{code}
was:
This code:
{code}
@Test
public void nativeViewTest()
{
driver.switchTo().window("NATIVE_APP");
}
{code}
That window() parameter is Selendroid-related and it has nothing to do with Graphene. Graphene is just not able to handle that.
It produces this exception:
java.lang.IllegalArgumentException: methods with same signature getContext() but incompatible return types: [class java.lang.String, class org.jboss.arquillian.graphene.context.GrapheneContext]
at sun.misc.ProxyGenerator.checkReturnTypes(ProxyGenerator.java:686)
at sun.misc.ProxyGenerator.generateClassFile(ProxyGenerator.java:437)
at sun.misc.ProxyGenerator.generateProxyClass(ProxyGenerator.java:323)
at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:636)
at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:722)
at org.jboss.arquillian.graphene.proxy.GrapheneProxy.createProxy(GrapheneProxy.java:166)
at org.jboss.arquillian.graphene.proxy.GrapheneProxy.getProxyForTargetWithInterfaces(GrapheneProxy.java:92)
at org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:165)
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.$Proxy27.window(Unknown Source)
at org.arquillian.droidium.showcase.hybrid.test01.SelendroidHybridTestAppTestCase.nativeViewTest(SelendroidHybridTestAppTestCase.java:101)
> Graphene can not switch between contexts
> ----------------------------------------
>
> Key: ARQGRA-449
> URL: https://issues.jboss.org/browse/ARQGRA-449
> Project: Arquillian Graphene
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: core
> Affects Versions: 2.0.3.Final
> Reporter: Stefan Miklosovic
>
> This code:
> {code}
> @Test
> public void nativeViewTest()
> {
> driver.switchTo().window("NATIVE_APP");
> }
> {code}
> That window() parameter is Selendroid-related and it has nothing to do with Graphene. Graphene is just not able to handle that.
> It produces this exception:
> {code}
> java.lang.IllegalArgumentException: methods with same signature getContext() but incompatible return types: [class java.lang.String, class org.jboss.arquillian.graphene.context.GrapheneContext]
> at sun.misc.ProxyGenerator.checkReturnTypes(ProxyGenerator.java:686)
> at sun.misc.ProxyGenerator.generateClassFile(ProxyGenerator.java:437)
> at sun.misc.ProxyGenerator.generateProxyClass(ProxyGenerator.java:323)
> at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:636)
> at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:722)
> at org.jboss.arquillian.graphene.proxy.GrapheneProxy.createProxy(GrapheneProxy.java:166)
> at org.jboss.arquillian.graphene.proxy.GrapheneProxy.getProxyForTargetWithInterfaces(GrapheneProxy.java:92)
> at org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:165)
> 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.$Proxy27.window(Unknown Source)
> at org.arquillian.droidium.showcase.hybrid.test01.SelendroidHybridTestAppTestCase.nativeViewTest(SelendroidHybridTestAppTestCase.java:101)
> {code}
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
10 years, 6 months