You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Dennis Kieselhorst (JIRA)" <de...@myfaces.apache.org> on 2015/11/27 15:56:10 UTC

[jira] [Commented] (TOBAGO-1473) Remove selenium legacy dependency

    [ https://issues.apache.org/jira/browse/TOBAGO-1473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15029940#comment-15029940 ] 

Dennis Kieselhorst commented on TOBAGO-1473:
--------------------------------------------

I played around with selenese-runner and was able to execute most of the test scripts.

However we need to find a replacement for TobagoSelenium.checkPage and implement missing stuff like this (I will create pull requests for this):
{noformat}
java.lang.UnsupportedOperationException: Unknown locator type: class=tobago-popup
	at jp.vmi.selenium.selenese.locator.WebDriverElementFinder.findElementsInternal(WebDriverElementFinder.java:218)
	at jp.vmi.selenium.selenese.locator.WebDriverElementFinder.findElements(WebDriverElementFinder.java:259)
	at jp.vmi.selenium.selenese.locator.WebDriverElementFinder.findElements(WebDriverElementFinder.java:271)
	at jp.vmi.selenium.selenese.locator.WebDriverElementFinder.findElement(WebDriverElementFinder.java:288)
	at com.thoughtworks.selenium.webdriven.commands.IsElementPresent.handleSeleneseCommand(IsElementPresent.java:36)
	at com.thoughtworks.selenium.webdriven.commands.IsElementPresent.handleSeleneseCommand(IsElementPresent.java:26)
	at com.thoughtworks.selenium.webdriven.SeleneseCommand.apply(SeleneseCommand.java:36)
	at jp.vmi.selenium.selenese.subcommand.WDCommand.execute(WDCommand.java:39)
	at jp.vmi.selenium.selenese.command.Assertion.executeImpl(Assertion.java:98)
	at jp.vmi.selenium.selenese.command.AbstractCommand.execute(AbstractCommand.java:145)
	at jp.vmi.selenium.selenese.command.CommandList.doCommand(CommandList.java:98)
	at jp.vmi.selenium.selenese.command.CommandList$$EnhancerByGuice$$eda6b15c.CGLIB$doCommand$13(<generated>)
	at jp.vmi.selenium.selenese.command.CommandList$$EnhancerByGuice$$eda6b15c$$FastClassByGuice$$64bfcffb.invoke(<generated>)
	at com.google.inject.internal.cglib.proxy.$MethodProxy.invokeSuper(MethodProxy.java:228)
	at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
	at jp.vmi.selenium.selenese.inject.ScreenshotInterceptor.invoke(ScreenshotInterceptor.java:29)
	at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
	at jp.vmi.selenium.selenese.inject.HighlightInterceptor.invoke(HighlightInterceptor.java:40)
	at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
	at jp.vmi.selenium.selenese.inject.CommandLogInterceptor.invoke(CommandLogInterceptor.java:78)
	at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
	at com.google.inject.internal.InterceptorStackCallback.intercept(InterceptorStackCallback.java:52)
	at jp.vmi.selenium.selenese.command.CommandList$$EnhancerByGuice$$eda6b15c.doCommand(<generated>)
	at jp.vmi.selenium.selenese.command.CommandList.execute(CommandList.java:152)
	at jp.vmi.selenium.selenese.TestCase.execute(TestCase.java:299)
	at jp.vmi.selenium.selenese.TestCase$$EnhancerByGuice$$6df3b740.CGLIB$execute$0(<generated>)
	at jp.vmi.selenium.selenese.TestCase$$EnhancerByGuice$$6df3b740$$FastClassByGuice$$9ee2623e.invoke(<generated>)
	at com.google.inject.internal.cglib.proxy.$MethodProxy.invokeSuper(MethodProxy.java:228)
	at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
	at jp.vmi.selenium.selenese.inject.ExecuteTestCaseInterceptor.invoke(ExecuteTestCaseInterceptor.java:55)
	at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
	at com.google.inject.internal.InterceptorStackCallback.intercept(InterceptorStackCallback.java:52)
	at jp.vmi.selenium.selenese.TestCase$$EnhancerByGuice$$6df3b740.execute(<generated>)
	at jp.vmi.selenium.selenese.TestSuite.execute(TestSuite.java:158)
	at jp.vmi.selenium.selenese.TestSuite$$EnhancerByGuice$$5f71ecf1.CGLIB$execute$0(<generated>)
	at jp.vmi.selenium.selenese.TestSuite$$EnhancerByGuice$$5f71ecf1$$FastClassByGuice$$c9431ffe.invoke(<generated>)
	at com.google.inject.internal.cglib.proxy.$MethodProxy.invokeSuper(MethodProxy.java:228)
	at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
	at jp.vmi.selenium.selenese.inject.ExecuteTestSuiteInterceptor.invoke(ExecuteTestSuiteInterceptor.java:54)
	at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
	at com.google.inject.internal.InterceptorStackCallback.intercept(InterceptorStackCallback.java:52)
	at jp.vmi.selenium.selenese.TestSuite$$EnhancerByGuice$$5f71ecf1.execute(<generated>)
	at jp.vmi.selenium.selenese.Runner.run(Runner.java:637)
	at org.apache.myfaces.tobago.example.test.AutomaticSeleniumTest.testPageConsistency(AutomaticSeleniumTest.java:69)
{noformat}

> Remove selenium legacy dependency
> ---------------------------------
>
>                 Key: TOBAGO-1473
>                 URL: https://issues.apache.org/jira/browse/TOBAGO-1473
>             Project: MyFaces Tobago
>          Issue Type: Improvement
>            Reporter: Dennis Kieselhorst
>            Assignee: Dennis Kieselhorst
>             Fix For: 3.0.0
>
>
> The selenium tests were migrated to use Webdriver in TOBAGO-1369 to make them runnable with current browser versions. This change has not been merged to 3.x branch yet. We need a different implementation in future as the current Selenium legacy support will be dropped in Selenium 3.
> Since everybody is happy with the current approach (record scripts with Selenium IDE and run them in Unittests) we should stick to this. Unfortunately there is no official runner for it (see https://code.google.com/p/selenium/issues/detail?id=175). Adapting this kind of approach using
> Arquillian Graphene/ Gebish will be lots of effort, but there is a runner on Github that looks promising: https://github.com/vmi/selenese-runner-java (Apache license)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)