Failed to create widget reference for instance of org.eclipse.swt.widgets.Slider WindowTester: 201009131510 - win32,win32,x86

279 views
Skip to first unread message

Phillip Jensen

unread,
Jul 7, 2011, 11:45:04 AM7/7/11
to windowtester-pro
Hi,

I am using Win XP, Eclipse 3.6.1, WT 6.0.0.

We have a composite that has some widgets including a Slider and a
Label. We are asserting text on the label like this:

ui.assertThat(new
NamedWidgetLocator("positionLabel").hasText("..."));

We are seeing this exception:


com.windowtester.runtime.swt.internal.widgets.SWTUIException:
Exception occurred on the SWT UI Thread
at
com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.run(SWTUIExecutor.java:
101)
at
com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayReference.java:
121)
at
com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayReference.java:
100)
at
com.windowtester.runtime.swt.internal.widgets.finder.SWTWidgetFinder.doFindAll(SWTWidgetFinder.java:
106)
at
com.windowtester.runtime.swt.internal.widgets.finder.SWTWidgetFinder.findAll(SWTWidgetFinder.java:
100)
at
com.windowtester.runtime.swt.locator.SWTWidgetLocator.findAll(SWTWidgetLocator.java:
302)
at
com.windowtester.runtime.swt.internal.UIContextSWT.findAll(UIContextSWT.java:
631)
at
com.windowtester.runtime.swt.internal.UIContextSWT.find(UIContextSWT.java:
546)
at
com.windowtester.runtime.swt.locator.SWTWidgetLocator.getText(SWTWidgetLocator.java:
746)
at
com.windowtester.runtime.condition.HasTextCondition.testUI(HasTextCondition.java:
56)
at
com.windowtester.internal.runtime.condition.ConditionMonitor.test(ConditionMonitor.java:
174)
at
com.windowtester.runtime.swt.internal.UIContextSWT.wait(UIContextSWT.java:
809)
at
com.windowtester.runtime.swt.internal.UIContextSWT.wait(UIContextSWT.java:
795)
at
com.windowtester.runtime.internal.AssertionHandler.waitFor(AssertionHandler.java:
62)
at
com.windowtester.runtime.internal.AssertionHandler.assertThat(AssertionHandler.java:
30)
at
com.windowtester.internal.runtime.UIContextCommon.assertThat(UIContextCommon.java:
225)
at
com.asolutions.mfk.windowtester.util.VideoHelper.assertPositionLabel(VideoHelper.java:
61)
at
com.asolutions.mfk.windowtester.video.TestSlider.testSlider(TestSlider.java:
28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:168)
at junit.framework.TestCase.runBare(TestCase.java:134)
at com.windowtester.runtime.common.UITestCaseCommon.access
$0(UITestCaseCommon.java:1)
at com.windowtester.runtime.common.UITestCaseCommon
$2.run(UITestCaseCommon.java:130)
at com.windowtester.runtime.common.UITestCaseCommon
$3.run(UITestCaseCommon.java:151)
at com.windowtester.internal.runtime.junit.core.SequenceRunner
$1.run(SequenceRunner.java:40)
Caused by:
com.windowtester.runtime.swt.internal.widgets.SWTUIException:
Exception occurred on the SWT UI Thread
at
com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.run(SWTUIExecutor.java:
101)
at
com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayReference.java:
121)
at
com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayReference.java:
100)
at
com.windowtester.runtime.swt.internal.widgets.CompositeReference.getChildControls(CompositeReference.java:
22)
at
com.windowtester.runtime.swt.internal.widgets.CompositeReference.setChildren(CompositeReference.java:
31)
at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference
$1.call(SWTWidgetReference.java:111)
at
com.windowtester.runtime.swt.internal.SWTUtils.safeExec(SWTUtils.java:
58)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.getChildren(SWTWidgetReference.java:
108)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:
296)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:
303)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:
309)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:
296)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:
303)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:
309)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:
296)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:
303)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:
309)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:
296)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:
303)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:
309)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:
296)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:
303)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:
309)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:
296)
at
com.windowtester.runtime.swt.internal.widgets.finder.MatchCollector.findMatchesIn(MatchCollector.java:
55)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.findWidgets(SWTWidgetReference.java:
285)
at
com.windowtester.runtime.swt.internal.widgets.finder.SWTWidgetFinder
$1.call(SWTWidgetFinder.java:112)
at
com.windowtester.runtime.swt.internal.widgets.finder.SWTWidgetFinder
$1.call(SWTWidgetFinder.java:1)
at
com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.execute(SWTUIExecutor.java:
132)
at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.access
$0(SWTUIExecutor.java:130)
at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor
$1.run(SWTUIExecutor.java:91)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:
134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:
4041)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at
com.windowtester.runtime.swt.internal.junit.SWTExecutionMonitor.doWaitForFinish(SWTExecutionMonitor.java:
151)
at
com.windowtester.internal.runtime.junit.core.AbstractExecutionMonitor.waitUntilFinished(AbstractExecutionMonitor.java:
205)
at
com.windowtester.internal.runtime.junit.core.SequenceRunner.waitUntilFinished(SequenceRunner.java:
69)
at
com.windowtester.internal.runtime.junit.core.SequenceRunner.exec(SequenceRunner.java:
53)
at
com.windowtester.runtime.common.UITestCaseCommon.runUITest(UITestCaseCommon.java:
147)
at
com.windowtester.runtime.common.UITestCaseCommon.runBare(UITestCaseCommon.java:
128)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:232)
at junit.framework.TestSuite.run(TestSuite.java:227)
at
org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:
130)
at
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:
38)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
467)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
683)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:
390)
at
org.eclipse.pde.internal.junit.runtime.RemotePluginTestRunner.main(RemotePluginTestRunner.java:
62)
at org.eclipse.pde.internal.junit.runtime.UITestApplication
$1.run(UITestApplication.java:116)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:
134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:
4041)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:
2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:
332)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:
664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:
149)
at mil.jeodnet.mfk.rcp.internal.Application.start(Application.java:
169)
at
org.eclipse.pde.internal.junit.runtime.UITestApplication.start(UITestApplication.java:
47)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:
196)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:
110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:
79)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:
369)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:
179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
at org.eclipse.equinox.launcher.Main.main(Main.java:1383)
Caused by: java.lang.RuntimeException: Failed to create widget
reference for instance of org.eclipse.swt.widgets.Slider
WindowTester: 201009131510 - win32,win32,x86
factory:
com.windowtester.runtime.swt.internal.widgets.win32.win32.x86.WTRuntimeFactorySWT_win32_win32_x86@dc6007
at
com.windowtester.runtime.internal.factory.WTRuntimeManager.createReference(WTRuntimeManager.java:
95)
at
com.windowtester.runtime.internal.factory.WTRuntimeManager.asReference(WTRuntimeManager.java:
36)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.forWidget(SWTWidgetReference.java:
315)
at
com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.asControlReferences(SWTWidgetReference.java:
234)
at com.windowtester.runtime.swt.internal.widgets.CompositeReference
$1.call(CompositeReference.java:24)
at com.windowtester.runtime.swt.internal.widgets.CompositeReference
$1.call(CompositeReference.java:1)
at
com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.execute(SWTUIExecutor.java:
132)
at
com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.run(SWTUIExecutor.java:
87)
... 79 more

keertip

unread,
Jul 11, 2011, 1:09:14 PM7/11/11
to windowtester-pro
Could you post the test code? Also if you have a snippet that can be
used to reproduce this problem at our end, it would be very helpful.

Phillip Jensen

unread,
Jul 18, 2011, 11:43:14 AM7/18/11
to windowte...@googlegroups.com
See attached zip.  It contains an eclipse project with a simple view and a window tester test that causes the exception.

Phil
com.asolutions.slidertest.zip

keertip

unread,
Jul 19, 2011, 12:08:47 PM7/19/11
to windowtester-pro
Thanks Phil! We will take a look.
>  com.asolutions.slidertest.zip
> 13KViewDownload

Gina Nebling

unread,
Aug 3, 2011, 5:13:02 PM8/3/11
to windowtester-pro
We were able to reproduce this, thanks to your sample test. The issue
here is with the Slider widget. If you comment out the Slider, the
test should run fine.
We'll look into why WindowTester does not recognize the Slider widget.

> We are seeing this exception:
> Caused by: java.lang.RuntimeException: Failed to create widget
> reference for instance of org.eclipse.swt.widgets.Slider

-
Gina

Lars Gjesse Kjellberg

unread,
Sep 8, 2011, 6:59:32 AM9/8/11
to windowtester-pro
Any news on this issue?

I also experience the problem and it would be of great value for my
tests to be able to work with slider widgets.

Lars

Keerti Parthasarathy

unread,
Sep 14, 2011, 1:10:39 AM9/14/11
to windowte...@googlegroups.com
Hi,

Sorry for the delay. Will look into this issue and get back soon.

Thanks for your patience.

--
Keerti

Falk Zilm

unread,
Apr 12, 2012, 11:00:08 AM4/12/12
to windowte...@googlegroups.com
Hi,

is there any workaround or solution available now ?

Best regards,
Falk

Elena Berestetsky

unread,
Apr 12, 2012, 11:02:05 AM4/12/12
to windowte...@googlegroups.com
No :) happy


From: Falk Zilm <falco....@gmx.net>
To: windowte...@googlegroups.com
Sent: Thursday, April 12, 2012 11:00:08 AM
Subject: Re: Failed to create widget reference for instance of org.eclipse.swt.widgets.Slider WindowTester: 201009131510 - win32,win32,x86

PJensen

unread,
Aug 20, 2012, 11:48:11 PM8/20/12
to windowte...@googlegroups.com
I just posted a patch for WT to add support for the Slider widget.  See Issue 10 (https://code.google.com/p/windowtester/issues/detail?id=10).

Phil

keerthivasan chinnathambi

unread,
Feb 19, 2015, 5:31:23 AM2/19/15
to windowte...@googlegroups.com
Keerti,

Any update on the issue ?

Thank you,
Keerthi

Fred G

unread,
Feb 19, 2015, 7:25:16 AM2/19/15
to windowte...@googlegroups.com
Keerthi,

Phil's patch has been committed and is included in the version that you are using.

Regards,

Fred
Reply all
Reply to author
Forward
0 new messages