Forum Discussion

NK00010010's avatar
NK00010010
Occasional Contributor
11 years ago

TC get stuck\freeze\hang when FindAllChildren and FindChild methods are used for my Open Applicaton

Hi all,

I've got situation when TC get stuck\freeze\hang when FindAllChildren and FindChild methods are used for my Open Applicaton:

Aplication get some delay after my last action (about 0-30 second) during this time some child abojects are loaded from remote server and it seems that during this child hierarchy changing this methods are freezing TC, after some time My OA and then other desktop applications.

I've checked all possible solutions from my side but I didn't find better solution then delay more than 30sec...

 

Have any idea to avoid this?

 

(All parent objects are got Exists property with True value, but when I search with FindAllChildren and FindChild methods I've got freeze)

5 Replies

  • Unfortunately, that is really not enough information to help resolve the issue? Is this test being run on a VM with sufficeint resources such as memory and disk space? Also from the description, it sounds like employing somewhat generic properties and the parent object has a lot of child items. Can you post a sample of the code that is being used for the FindAllChildren method to help narrow this down somewhat?

    • NK00010010's avatar
      NK00010010
      Occasional Contributor

      Code example:

       

      PropArray = ["Name", "Visible"]
      PropValue = ["VCLObject(\"TB\")", true]
      while(!aqObject.IsSupported(obj, "FindAllChildren")){} 
      object = obj.FindAllChildren(PropArray, PropValue, 5, true); //freeze is here

       

      Childs count is from 10 to 100.

      This is not VM related issue - I've got freezes also at my desktop 8Gb RAM CoreI5

      • mes6073's avatar
        mes6073
        Contributor

        Seems like possibly the search criteria is too generic and needs to be more discriminating:

         

         

        // example of additional properties - if applicable maybe add .NET properties
        PropArray = ["Name", "WndClass", "Enabled", "Visible"]
        // ** update 'ClassName' with applicable value
        PropValue = ["VCLObject(\"TB\")", "ClassName", true, true]