Forum Discussion

jkrolczy's avatar
jkrolczy
Super Contributor
11 years ago

Tree vs. Hybrid

My machines all see an internal company application(a web-based application) as using Sys.Browser() using the Test Complete Object Spy.   Sys.Browser() is multi-browser supported, rather than Sys.Process() which is not multi-browser supported.  The model should be set to “tree”.  However, which I run a script, the Model for the project keeps going back to Hybrid, rather than staying as Tree.

 

Tree vs. Hybrid is in Test Complete, under Tools->Current Project Properties->Open Applications->Web Testing->tree model.  It can be DOM, Tag, Hybrid, or Tree.  In  my case, Tree is most preferred because the machine is multi-browser supported (Internet Explorer, and Firefox).

 

When I run the automation, it keeps giving me a warning as it is in Hybrid mode.  It is save into Tree mode, run a script, and it goes right back into Hybrid model.  I have uninstalled Firefox from my one test machine, but it is still seeing our websites using Sys.Browser().  I have just re-installed Firefox.  That doesn’t make any difference.  It still goes back to Hybrid, even though I am using Sys.Browser() and have Firefox installed for multi-browser capabilities.    Why would it go back to Hybrid?  I just don’t know why this happens.

 

I have changed all Sys.Process() to Sys.Browser,  and Sys.WaitProcess to Sys.WaitBrowser.  The only places that were not changed are for Exports, WinZip, Notepad, other application-oriented locations.  In these places, Sys.Process is still used by the Test Complete.

 

Ideally, I would like to keep the multi-browser support and use Sys.Browser() and not get any error.  So that it stays in Tree mode.  The reason why is because sometimes I run the automation on my work laptop which is multi-browsers.  I use Firefox for Rally.  So I would like to keep the projects to support multi-browsers so that it is all consistent.

 

I would really like to get a resolution to this issue.    

Does that make sense?



  • Hi, James



    It is save into Tree mode, run a script, and it goes right back into Hybrid model.



    It seems that somewhere in a script there is a hard-coded instruction that changes the web object model to Hybrid. Look through your scripts for the occurences of:



    Options.Web.TreeModel = "Hybrid"



    If found, just remove this line or change it to



    Options.Web.TreeModel = "Tree"





    Also check that the "Use legacy web testing features" option is disabled.