Forum Discussion

Mark_Küpper's avatar
Mark_Küpper
Occasional Contributor
8 years ago

Object recognition broken in TC12 by new "hint"-Feature

Hello,

 

I am currently evaluating the new TestComplete (Desktop) Version 12.20 (coming from TC V.11.30) and am experiencing trouble migrating my ProjectSuite. The new "Object recognition hint"-Feature has proven to be quite a backlash, because the test run, that did run very smoothly in TC11, is now filled with these hints which are in fact preventing correct execution of object manipulation actions.

 

From what I can tell, actions fail, whenever indexes (in objects and processes alike) are used in the name mapping.

 

Example 1:

There is a root object called ["WinFormsAdapter1"], which is one of several instances. The only way to reliably differentiate between them is the index, however when the test sequence is executed, TC 12 warns (and in fact fails) at this object and suggests in the hint-warning to remove the index out of the name mapping file (which of course doesn't make things any better).

 

Example 2:

To control two instances of the same process, I have assigned a global variable to the index property in the name mapping.

The index in this variable is switched at runtime after which the mapping tree is refreshed.

Again that worked very well and reliable in TC11 but fails in TC12.

 

So my question is:

Is this new behavior a known issue? Is there any why to disable this new "improved" object recognition feature?

 

Regards,

Mark

  • Mark_Küpper's avatar
    Mark_Küpper
    8 years ago

    Well, it turned out that this was the same issue after all, that other posters here had as well.

     

    The problem in my project was the strict behavior control of all routine-chains, meaning that a routine will only execute if its prerequisite-routine returns true (which it doesn't as soon as an uncatched error or warning occurs).

     

    So it seems that this problem doesn't have a (satisfying) solution except maybe waiting for an upcoming TC version while hoping that this feature request will be in it.

     

    Regards

    • Mark_Küpper's avatar
      Mark_Küpper
      Occasional Contributor

      Thank you for your reply.

       

      I have actually already found the first thread of the ones you posted, however it is not the same problem.

       

      My Problem isn't just a cosmetic issue. The Object, that the hint-message says was not found, should have been found and was indeed found by the older TC-Version.

       

      To be sure, I just started both, TC11 and TC12 with two copies of the same ProjectSuite.

      I then executed a routine, that calls a row count method on a winforms table (the tested app is started on the same machine).

       

      In TC11 the Routine worked as expected. TC12 showed the hint-warning and was not able to call the method on the exact same tested app which was also not restarted between this test. There is definitly something odd about the object recognition..

       

      I really hope, that there are more suggestions.

       

      Regards

      • tristaanogre's avatar
        tristaanogre
        Esteemed Contributor

        Double check timing.  On your project, there is an Auto-Wait Timeout property in Tools | Current Project Properties | Playback.  By default, for new projects, that's 10 seconds.  It COULD be that this needs to be increased.  Try taking it up to 20000 ms and see if that corrects your problem.

         

        Converting from TC 11 to TC 12 SHOULD be seemless but it's possible that this value might have gotten reset.