Skip to main content



      Home
Home » Eclipse Projects » RCP Testing Tool » How to increase verbosity of recorder?(Is it possible to increase the verbosity of the recorder while recording? )
How to increase verbosity of recorder? [message #1710347] Tue, 06 October 2015 04:01 Go to next message
Eclipse UserFriend
Is it possible to increase the verbosity of the recorder while recording in a way that one gets detailed information (console or log file) about the events the recorder receives and the actions it performs?

This would facilitate error diagnostics for us, for instance in cases when some similar user interactions on the AUT gets recorded in some cases, but not in others (an issue we face presently).
Re: How to increase verbosity of recorder? [message #1710364 is a reply to message #1710347] Tue, 06 October 2015 04:47 Go to previous messageGo to next message
Eclipse UserFriend
Hi Matthias,

Do you need this specifically for a recorder?
Did you check Execution View/Details? It contains all detailed information which may be also helpful.

Kind regards,
Ulyana.
Re: How to increase verbosity of recorder? [message #1710365 is a reply to message #1710364] Tue, 06 October 2015 05:07 Go to previous messageGo to next message
Eclipse UserFriend
Hi Ulyana,

Ulyana Skorokhodova wrote on Tue, 06 October 2015 04:47

Do you need this specifically for a recorder?


In my present situation I need a means to get a clue why on some views text inputs get recorded, but not on others (for the same kind of text widget).

Ulyana Skorokhodova wrote on Tue, 06 October 2015 04:47

Did you check Execution View/Details? It contains all detailed information which may be also helpful.


While recording, the Details in the Execution View only prints a list of active threads (example see below); however, that does not help at all in diagnosting what happens in the recorder.
Much more useful would be some sort of messages where the recorder logs the UI events it gets notified by and what ECL it is consequently creating and why.

--- Example of details statement ---
Thread:Remoting "config-based-ejb-client-endpoint" task-3
class=java.lang.Thread
8: sun.misc.Unsafe.park(Native Method)
7: java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
6: java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
5: java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
4: org.xnio.LimitedBlockingQueue.take(LimitedBlockingQueue.java:95)
3: java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
2: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
1: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
0: java.lang.Thread.run(Thread.java:745)
Re: How to increase verbosity of recorder? [message #1710471 is a reply to message #1710365] Tue, 06 October 2015 23:22 Go to previous messageGo to next message
Eclipse UserFriend
Hi Matthias,

This can be considered as a separate improvement task for RCPTT.
I'm not placing it in a RoadMap right now, because it is needed to be discussed with a team.

Anyway, RCPTT is an OpenSource Project, so any useful contributions are welcomed Smile

Kind regards,
Ulyana.
Re: How to increase verbosity of recorder? [message #1710487 is a reply to message #1710471] Wed, 07 October 2015 03:24 Go to previous messageGo to next message
Eclipse UserFriend
Hi Ulyana,

Ulyana Skorokhodova wrote on Tue, 06 October 2015 23:22
Hi Matthias,
Anyway, RCPTT is an OpenSource Project, so any useful contributions are welcomed Smile


Sure, why not?
One should always give back something when benefitting from Open Source.

For the moment, though, I need to find out why the recorder does not record interactions on some of our views.
Without decent logging, I'm somewhat out of ideas how to achieve that.

Maybe you could provide me with some advice in that regard?
Debugging the sources of the recorder itself might be a last resort; however, I guess there are less labor-intensive means before I take to that?
Re: How to increase verbosity of recorder? [message #1710501 is a reply to message #1710487] Wed, 07 October 2015 04:01 Go to previous messageGo to next message
Eclipse UserFriend
Hi Matthias,


Quote:
Debugging the sources of the recorder itself might be a last resort; however, I guess there are less labor-intensive means before I take to that?

Honestly, that's what we usually do on our side to diagnose the issue with recording/replaying. So I'm not quite sure if there is anything else more effective, but let me ask our dev team.

BTW, is it possible to get your AUT to reproduce it on our side?
If it's not, could you please attach widget details for that view which is not recognised by RCPTT recorder?

Kind regards,
Ulyana.

Re: How to increase verbosity of recorder? [message #1710517 is a reply to message #1710501] Wed, 07 October 2015 05:40 Go to previous messageGo to next message
Eclipse UserFriend
Ulyana Skorokhodova wrote on Wed, 07 October 2015 04:01

BTW, is it possible to get your AUT to reproduce it on our side?


As a matter of fact, the RCP app in question is pretty large and complex and needs a sophisticated backend to reproduce the context at hand, so I do not think delivering it to you is an option (apart from the issues our legal department might have).

When using in a small RCP demo app the widgets for which we face issues with recording, interestingly everything works well. This is both encouraging as well a hint that the problems are not related to the widgets themselves but rather on the context/view they are running on.

Ulyana Skorokhodova wrote on Wed, 07 October 2015 04:01

If it's not, could you please attach widget details for that view which is not recognised by RCPTT recorder?


Tried to do that following the steps provided in the article, but immediately run into an exception when the RCP app's view gets the focus while the recorder is in Assertion mode (see below).

Maybe the exception logged there already hints to the underlying issue?

-- Error stack trace in Eclipse console ---

MESSAGE Unhandled event loop exception
!STACK 0
java.lang.NullPointerException
at org.eclipse.ui.internal.ViewReference.getPartName(ViewReference.java:69)
at org.eclipse.rcptt.tesla.internal.ui.player.SWTModelMapper.fillView(SWTModelMapper.java:245)
at org.eclipse.rcptt.tesla.internal.ui.player.SWTModelMapper.internalMap(SWTModelMapper.java:206)
at org.eclipse.rcptt.tesla.internal.ui.player.SWTModelMapper.map(SWTModelMapper.java:90)
at org.eclipse.rcptt.tesla.recording.core.swt.SWTWidgetLocator.findPartElement(SWTWidgetLocator.java:1275)
at org.eclipse.rcptt.tesla.recording.core.swt.SWTWidgetLocator.findElement(SWTWidgetLocator.java:217)
at org.eclipse.rcptt.tesla.recording.core.swt.SWTWidgetLocator.findElement(SWTWidgetLocator.java:272)
at org.eclipse.rcptt.tesla.recording.core.swt.SWTWidgetLocator.findElement(SWTWidgetLocator.java:1450)
at org.eclipse.rcptt.tesla.recording.core.swt.RecordingWidgetDescriber.searchForElement(RecordingWidgetDescriber.java:60)
at org.eclipse.rcptt.tesla.recording.core.swt.SWTAssertManager.updateHoverAccordingTo(SWTAssertManager.java:820)
at org.eclipse.rcptt.tesla.recording.core.swt.SWTAssertManager.access$9(SWTAssertManager.java:808)
at org.eclipse.rcptt.tesla.recording.core.swt.SWTAssertManager$4.run(SWTAssertManager.java:446)
at org.eclipse.rcptt.sherlock.core.SherlockTimerRunnable.run(SherlockTimerRunnable.java:23)
at org.eclipse.swt.widgets.Display.timerProc(Display.java:4380)
at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2477)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3407)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at de.patronas.opus.client.rcp.core.rcpapp.Application.start(Application.java:28)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
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.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
at org.eclipse.equinox.launcher.Main.main(Main.java:1438)

Re: How to increase verbosity of recorder? [message #1710522 is a reply to message #1710517] Wed, 07 October 2015 05:56 Go to previous message
Eclipse UserFriend
Besides, the view where the exception in the recorder in Assertion Mode above occurs is an E4 view running on a E3/E4 compatibility layer.
Previous Topic:How to force test case runner to clear workspace of AUT on "Run As -> Test cases"?
Next Topic:"tear down" context for tests?
Goto Forum:
  


Current Time: Sun Jun 15 18:26:31 EDT 2025

Powered by FUDForum. Page generated in 0.06767 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top