Ask a Question

TestComplete unable to identify any object - C++ Application

SOLVED
GBrg
New Contributor

TestComplete unable to identify any object - C++ Application

Hello All;

 

I am a very new user to this product and was wondering if there are any helpful tips to get TestComplete to recognise my application.

The application I would like to automate is a Point of Sale application based on C++. This is a legacy product but is still in mass use today.

When I attempt the Object Spy on the window it can only discover the whole application (runs in Full Screen) (POS1.JPG).

I get a UIAObject for the application (Compris_GPOS) with a blank visualisation.

 

I am unable to record any clicks or screen outputs past this and a little stumped.

 

We have been informed that the application may not be suitable for automation, but looking on the SmartBear website is states ANY 32/64bit application, so a little confused.

 

Any tips would be greatly received.

 

Many thanks

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
AlexKaras
Community Hero

Re: TestComplete unable to identify any object - C++ Application

@GBrg :

Hi Gerard,

 

unless RTTI or external Debug has been enabled

If debug information for C/C++ application is absent then TestComplete can access only those objects (windows) that are exposed by the operating system. The same windows can be seen in, say, Spy++.

With debug information been accessible, TestComplete can access internal objects of the tested application much like debugger does.

Depending on the given tested application, the following options are possible in case debug information is absent:

-- Use keyboard shortcuts to trigger this or that function and/or activate this or that field/control (e.g.: <mainWindow>.Keys('^S') to call Save As dialog);

-- Image-based testing;

-- Coordinate-based testing;

-- Text recognition technology (https://support.smartbear.com/testcomplete/docs/testing-with/object-identification/text-recognition/...).

 

Regards,
  /Alex [Community Hero]
____
[Community Heroes] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Heroes]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Hero] signature is used with permission by SmartBear Software.
https://community.smartbear.com/t5/custom/page/page-id/hall-of-fame
================================

View solution in original post

6 REPLIES 6
Marsha_R
Community Hero

Re: TestComplete unable to identify any object - C++ Application

Here's some information that may be helpful.  Let us know if you have any questions as you work through it.

 

https://support.smartbear.com/testcomplete/docs/app-testing/desktop/visual-c/index.html

GBrg
New Contributor

Re: TestComplete unable to identify any object - C++ Application

Thank you for the quick response.

 

In essence TestComplete cannot operate against a C++ application unless RTTI or external Debug has been enabled at point of compile?


Cheers

 

Gerard

Marsha_R
Community Hero

Re: TestComplete unable to identify any object - C++ Application

If that's what it says in the documentation, yes.  

AlexKaras
Community Hero

Re: TestComplete unable to identify any object - C++ Application

@GBrg :

Hi Gerard,

 

unless RTTI or external Debug has been enabled

If debug information for C/C++ application is absent then TestComplete can access only those objects (windows) that are exposed by the operating system. The same windows can be seen in, say, Spy++.

With debug information been accessible, TestComplete can access internal objects of the tested application much like debugger does.

Depending on the given tested application, the following options are possible in case debug information is absent:

-- Use keyboard shortcuts to trigger this or that function and/or activate this or that field/control (e.g.: <mainWindow>.Keys('^S') to call Save As dialog);

-- Image-based testing;

-- Coordinate-based testing;

-- Text recognition technology (https://support.smartbear.com/testcomplete/docs/testing-with/object-identification/text-recognition/...).

 

Regards,
  /Alex [Community Hero]
____
[Community Heroes] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Heroes]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Hero] signature is used with permission by SmartBear Software.
https://community.smartbear.com/t5/custom/page/page-id/hall-of-fame
================================

View solution in original post

GBrg
New Contributor

Re: TestComplete unable to identify any object - C++ Application

Hi Alex;

 

Thank you for your suggestion here, it does look much more promising.

 

I have now got visualisations when doing the record and after 'playing' with the pixel settings it can detect the text on the button presses.

 

I know there is a wealth of documentation to explorer, but is there a way to 'auto discover' buttons and flows using text recognition this way?

 

Thanks again!

AlexKaras
Community Hero

Re: TestComplete unable to identify any object - C++ Application

Hi Gerard,

 

it can detect the text on the button presses.

These are good news.

 

is there a way to 'auto discover' buttons

I am afraid no... As per documentation, you must specify parent object (window) and the text you are looking for.

 

One more option is Optical Character Recognition (OCR), but it requires additional licensing. Nevertheless, you may read documentation and then consider whether it is worth trying.

 

Regards,
  /Alex [Community Hero]
____
[Community Heroes] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Heroes]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Hero] signature is used with permission by SmartBear Software.
https://community.smartbear.com/t5/custom/page/page-id/hall-of-fame
================================
cancel
Showing results for 
Search instead for 
Did you mean: