Rx Spy not seeing obj properties that other UI utilities can

Technology specific object identification, supported applications, web technologies, and 3rd party controls.
Gav
Posts: 27
Joined: Thu Oct 20, 2011 10:52 am

Rx Spy not seeing obj properties that other UI utilities can

Post by Gav » Fri Mar 23, 2012 3:43 pm

I'm having problems with Ranorex Spy identifying certain properties of our controls that are detected quite happily by other utilities.

We're writing a C++ application that uses wxWidgets to implement its user interface. Currently we have no accessibility support built into the application but we have noticed that the native Win32 controls created via wxWidgets contain useful information (such as control names and help text) and these are detected by utilities such as UISpy but not by Ranorex Spy.

For example, I am attempting to identify a button in a toolbar. In the screen shot below from UISpy the toolbar and all its buttons can be seen identified by Name. The right-hand panel exposes further information about one particular button, showing HelpText and Name.
ButtonDetailUISpy.png
Button Detail - UISpy
ButtonDetailUISpy.png (151.81 KiB) Viewed 1816 times
Compare this with Ranorex Spy: in this screen shot both the toolbar and its buttons are identified only by their CommandIds. There is no control information available.
ButtonOverviewRxSpy.png
Button Overview - Ranorex Spy
ButtonOverviewRxSpy.png (78.44 KiB) Viewed 1816 times
The screenshot below shows the detail of the same button mentioned above, but all the useful information such as Name is missing.
ButtonDetailRxSpy.png
Button Detail - Ranorex Spy
ButtonDetailRxSpy.png (102.79 KiB) Viewed 1816 times
I have tried the following, all to no avail:
  • Entering the paths manually, using '@name', '@helptext' etc. to attempt to locate the objects onscreen via these properties
    Enabled / Disabled the 32/64 Bit Bridge
    Changed the MSAA, Win32 and WPF settings to 'evaluate computationally expensive attributes' and switch off filtering
    Tried both 32- and 64-bit versions of Ranorex Spy (our application is 64-bit)
    Ensure that both RxSpy and our application are run as the same user, with same permissions to the locations that they are installed. Even ran both as Administrator
It is not sufficient to use the CommandIds as these change each time the application runs, as do indeces of toolbars and buttons when other controls are added to the application during use.

Windows 7 Ultimate, SP1
Ranorex 3.2.2.16425
Sanpshot file can be emailed if required (can't add any more attachments to this post)

Can anyone help with why Ranorex Spy isn't able to pick up this information?

Many thanks,

Gav

User avatar
Support Team
Site Admin
Site Admin
Posts: 11710
Joined: Fri Jul 07, 2006 4:30 pm
Location: Graz, Austria

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Support Team » Mon Mar 26, 2012 2:56 pm

Hi,

can you please provide us a small sample running into this behavior to allow us to reproduce the issue.
You can either attach the sample application to your next forum post, or send a mail with the attached sample application to [email protected].

Regards,
Tobias
Ranorex Team
.
Image

Gav
Posts: 27
Joined: Thu Oct 20, 2011 10:52 am

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Gav » Mon Mar 26, 2012 3:42 pm

Hi there,

We can probably get something together for you, but in the meantime do you have any other suggestions we could try to get Spy recognising the controls?

Thanks,

Gav

Gav
Posts: 27
Joined: Thu Oct 20, 2011 10:52 am

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Gav » Tue Mar 27, 2012 10:44 am

Hi there,

Please find attached a sample application that exhibits the same problems we are seeing with our own application.

For example, Ranorex Spy shows none of the specific toolbar item details when running under any combination of user, administrator and 32/64 bit configurations, whereas UISpy shows all the information whether running as a basic user or administrator.

Hopefully this will help determine what the problem is.

Many thanks,

Gav Warrender
Attachments
toolbar.zip
Sample toolbar application
(758.22 KiB) Downloaded 203 times

User avatar
Support Team
Site Admin
Site Admin
Posts: 11710
Joined: Fri Jul 07, 2006 4:30 pm
Location: Graz, Austria

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Support Team » Wed Mar 28, 2012 10:22 am

Hi,

Thanks for the file!
We will contact you as soon as we found the failure.

Regards,
Markus
Ranorex Support Team
.
Image

Gav
Posts: 27
Joined: Thu Oct 20, 2011 10:52 am

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Gav » Wed Apr 04, 2012 9:39 am

Hi chaps,

Have you managed to make any progress with this issue yet?

Thanks,

Gav

User avatar
Support Team
Site Admin
Site Admin
Posts: 11710
Joined: Fri Jul 07, 2006 4:30 pm
Location: Graz, Austria

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Support Team » Fri Apr 06, 2012 9:18 am

Hi,

it looks like, in you specific case, the MSAA representation is better than the native Win32 representation.
By disabling MSAA filtering, the MSAA representation will be available.
You can disable the filtering in "Plugin" tab of General Ranorex Settings dialog.

For example the RanoreXPath to the "New File" button is as follows:

Code: Select all

/form[@title='wxToolBar Sample']/container/form[2]/toolbar/button[@accessiblename='New file']
Regards,
Tobias
Ranorex Team
.
Image

Gav
Posts: 27
Joined: Thu Oct 20, 2011 10:52 am

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Gav » Tue Apr 10, 2012 11:21 am

Hi there,

Disabling the MSAA filtering options has had no effect - I am still unable to see the items correctly in either the demo app or our own application. However, inputting the path you suggested for 'New File' directly into the RanoreXPath bar does find the item and shows it with each of its ascendant tree objects.

This still doesn't solve the problem, though as I am unable to locate the objects in the AUT with the browser.

Further suggestions would be greatly appreciated!

Gav

User avatar
Support Team
Site Admin
Site Admin
Posts: 11710
Joined: Fri Jul 07, 2006 4:30 pm
Location: Graz, Austria

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Support Team » Tue Apr 10, 2012 12:27 pm

Hi,

I'm sorry, but in your case from point tracking is not possible, as the Win32 element will always be tracked.
With disabling the filtering you can find the specific elements, but as mentioned before not from point.
That means you have to find the specific elements in Ranorex Spy, not by tracking them.

Regards,
Tobias
Ranorex Team
.
Image

Gav
Posts: 27
Joined: Thu Oct 20, 2011 10:52 am

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Gav » Tue Apr 10, 2012 3:41 pm

Hi Tobias,

I'm sorry but I don't follow what you're saying.

Whether using the demo application or our AUT, I don't really use the tracking facility, but let Spy scan and then I expand the various trees manually.

Thanks,

Gav

User avatar
Support Team
Site Admin
Site Admin
Posts: 11710
Joined: Fri Jul 07, 2006 4:30 pm
Location: Graz, Austria

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Support Team » Wed Apr 11, 2012 1:29 pm

Hi,

What do you mean with "let Spy scan"?
Do you know that you can expand all elements of your application at once, just right click on the root element and select "Expand All", then Ranorex will show all the existing elements of your application.
If you do so, you should be able to see all elements with the appropriate values.
If you still see the wrong values can you send us the RxPath of the specific element and the value which should be displayed instead?
By the way please update to the actual Ranorex 3.2.3.
You will find the link on the start page of Ranorex Studio.

Regards,
Markus
Ranorex Support Team
.
Image

Gav
Posts: 27
Joined: Thu Oct 20, 2011 10:52 am

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Gav » Wed Apr 11, 2012 5:16 pm

Hi Markus,

This is generally how I use Spy to identify objects:
Start the AUT and Spy
In Spy, hit 'Browse Local Host' or 'Refresh' and switch on 'Highlight Elements'
I then expand the tree of the AUT and, using Highlight to guide me, find my way to the object I need.

Or I may indeed choose to expand the whole tree of the AUT. Either way, the problem is then, as demonstrated, that the objects do not appear in Spy with all the useful information that should be available to help locate them, information that other identification tools find without any problem.

Changing the MSAA filtering options has not helped for either the demo app I sent to you or with our AUT, therefore it appears that there is a problem with Spy.

However, I think I may now understand what I need to do to get the items showing correctly. If I type directly into the XPath in Spy

Code: Select all

/form[@title='AUT']/container
and hit enter, then it shows me the app tree in a completely different manner, but with all the accessibility information present.

I'm not sure how intentional this is, or if this is what you expected from your instructions a couple of posts ago, but it gets me where I need to be for the time being. Do you have any ideas why Spy won't show me this information by default, in the same way UISpy does? Or is this what I ordinarily would need to do?

Thanks,

Gav

Gav
Posts: 27
Joined: Thu Oct 20, 2011 10:52 am

Re: Rx Spy not seeing obj properties that other UI utilities can

Post by Gav » Wed Apr 11, 2012 5:32 pm

Actually just noticed that I'm being a complete numpty! When I turn off the MSAA filtering, the 'container' object appears below all the non-friendly objects. The container then expands to show all the objects with friendly names!

Thanks for your help and guidance, and apologies for kind of missing the point a few posts ago!

Gav